dex*_*vip 11 java text file package
我正在尝试读取特定包中的文本文件,但它返回无法找到.我可以读取它插入绝对路径但我想读取它而不插入绝对路径.
String texto = "Utils/CEP/Cidades/" + estado + ".txt";
FileReader fr = new FileReader(texto);
BufferedReader in = new BufferedReader(fr);
Run Code Online (Sandbox Code Playgroud)
我应该怎么做?
谢谢
Boz*_*zho 26
您可以使用
InputStream in =
getClass().getResourceAsStream("/Utils/CEP/Ciades/" + estado + ".txt");
Reader fr = new InputStreamReader(in, "utf-8");
Run Code Online (Sandbox Code Playgroud)
一些旁注:不要在包名中使用大写字母; 使用变量的英文名称.这些是公认的做法和惯例.
Viv*_*vek 13
可能还有点晚,这可以帮助其他许多人.这些是访问项目中可用资源的方法
从默认包中获取资源
// Getting Resource as file object
File f = new File(getClass().getResource("/excludedir.properties").getFile());
// Getting resource as stream object
InputStream in = getClass().getResourceAsStream("/excludedir.properties");
Run Code Online (Sandbox Code Playgroud)
从特定包中获取资源
// Getting Resource as file object
File f = new File(getClass().getResource("/com/vivek/core/excludedir.properties").getFile());
// Getting resource as stream object
InputStream in = getClass().getResourceAsStream("/com/vivek/core/excludedir.properties");
Run Code Online (Sandbox Code Playgroud)
注意: getclass()是一个非静态函数,不能从静态上下文中调用.如果要从静态上下文中调用使用
YourClassName.class.getResource("/com/vivek/core/excludedir.properties").getFile()
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.干杯!!
如果文本文件与类文件存在于同一结构中,那么您可能更适合使用getResourceAsStream.
| 归档时间: |
|
| 查看次数: |
50129 次 |
| 最近记录: |