我正在尝试读取在CLASSPATH系统变量中设置的文本文件。不是用户变量。
我正在尝试将输入流传输到文件,如下所示:
将文件(D:\myDir
)的目录放在CLASSPATH中,然后尝试以下操作:
InputStream in = this.getClass().getClassLoader().getResourceAsStream("SomeTextFile.txt");
InputStream in = this.getClass().getClassLoader().getResourceAsStream("/SomeTextFile.txt");
InputStream in = this.getClass().getClassLoader().getResourceAsStream("//SomeTextFile.txt");
将文件(D:\myDir\SomeTextFile.txt
)的完整路径放在CLASSPATH中,然后尝试上述3行代码中的相同路径。
但是不幸的是,它们都没有起作用,我一直都在null
进入InputStream in
。
在类路径上的目录中,从同一类加载器加载的类中,你应该能够使用以下任一种:
// From ClassLoader, all paths are "absolute" already - there's no context
// from which they could be relative. Therefore you don't need a leading slash.
InputStream in = this.getClass().getClassLoader()
.getResourceAsStream("SomeTextFile.txt");
// From Class, the path is relative to the package of the class unless
// you include a leading slash, so if you don't want to use the current
// package, include a slash like this:
InputStream in = this.getClass().getResourceAsStream("/SomeTextFile.txt");
如果这些都不起作用,则表明还有其他问题。
因此,例如,使用以下代码:
package dummy;
import java.io.*;
public class Test
{
public static void main(String[] args)
{
InputStream stream = Test.class.getResourceAsStream("/SomeTextFile.txt");
System.out.println(stream != null);
stream = Test.class.getClassLoader().getResourceAsStream("SomeTextFile.txt");
System.out.println(stream != null);
}
}
而这个目录结构:
code
dummy
Test.class
txt
SomeTextFile.txt
然后(使用Linux机器上的Unix路径分隔符):
java -classpath code:txt dummy.Test
结果:
true
true
问题内容: 这是我想做的,我想知道是否有任何Spring类可以帮助实现。对于这个特定的问题,我不必使用spring,我只是将其与其他所有东西一起实现。 在我的DAO层中,我想外部化我的sql文件,也就是每个文件1个sql。我想读取并缓存sql语句,甚至可能作为spring bean单例。但是在我最初的挣扎中,我只是在类路径中加载一个sql文件时遇到问题… 春天有什么可以帮助您的吗?我已经阅读过文档
是否可以传入文件路径或从csv中的其他文件读取?我的测试设置是这样的。 测试仪测试 CSV数据配置 我想在csv项目列和jmeter测试中包含一个文件,它将读取和发布json项目。
问题内容: 如何从Java中classpath读取文本文件? 问题答案: 在类路径上的目录中,从同一类加载器加载的类中,你应该能够使用以下任一种: 如果这些都不起作用,则表明还有其他问题。 因此,例如,使用以下代码: 而这个目录结构: 然后(使用Linux机器上的Unix路径分隔符): 结果:
问题内容: 我需要阅读Java包中包含的类。这些类在类路径中。我需要直接从Java程序执行此任务。你知道简单的方法吗? 问题答案: 如果你的类路径中包含Spring,则可以执行以下操作。 在包中找到所有用XmlRootElement注释的类:
问题内容: 我只想从完整路径到文件获取文件夹路径。 例如,我想要得到(不包括)。 我已经尝试过这样的事情: 但是它给了我这样的结果: 这不是我需要的结果(为)。 关于如何获取文件路径的任何想法? 问题答案: 您几乎可以使用该功能了。您只需要加入字符串,如下所示。 虽然,我建议使用该函数来执行此操作,但是您只需要传递字符串即可,它将为您完成工作。由于您似乎在Windows上,因此也考虑使用该功能。一
问题内容: 我需要在WebContent目录中获取文件的真实路径,以便我使用的框架可以访问该文件。它仅将String文件作为属性,因此我需要在WebContent目录中获取此文件的真实路径。 我使用Spring Framework,因此应该可以在Spring中解决。 问题答案: 如果您在servlet中需要此功能,请使用!