从包中读取文件

时间:2011-06-24 14:15:54

标签: java filereader

这是我目前的代码:

public void copy(String file, String region) throws FileNotFoundException, IOException{

    File inputFile = new File(curDir+"\\RADS\\system\\"+file+"-"+region+".cfg");
    File outputFile = new File(curDir+"\\RADS\\system\\"+file+".cfg");

    FileReader in = new FileReader(inputFile);
    FileWriter out = new FileWriter(outputFile);
    int c;

    while ((c = in.read()) != -1) {
        out.write(c);
    }

    in.close();
    out.close();
}

在这种情况下,从硬盘驱动器上的某处读取文件并进行复制。但我想要的是inputFile是来自资源包的文件,我仍然想要使用相同的机制。

有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

您可以使用ClassLoader的getResourceAsStream来实现此目的:

InputStream input = getClass().getResourceAsStream("/RADS/system/" + file + " - " + region + ".cfg");
InputStreamReader in = new InputStreamreader(input);

班上的其他人应该能够保持这种方式。

对于(某些)更多信息:javadoc

祝你好运:)