我试图让这个工作,但它没有,我不明白为什么, 它应该是一个脚本,我输入一个参数文件,并用它中的正确替换字符替换它。 它不会替换我作为参数输入的文件。 我可以让它工作如果我将整个代码放在main函数中而不调用方法。
感谢。
public class Rename
{
public static void main(String[] args) throws IOException{
File origine = new File(args[0]);
renameFile(origine);
}
public static void renameFile(File fileOriginal) throws IOException
{
try
{
File tempFile = File.createTempFile("buffer", ".tmp");
FileWriter fw = new FileWriter(tempFile);
Reader fr = new FileReader(fileOriginal);
BufferedReader br = new BufferedReader(fr);
while (br.ready())
{
fw.write(br.readLine().replace("#/A#" , "Á"));
}
fw.close();
br.close();
fr.close();
tempFile.renameTo(fileOriginal);
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:3)
renameTo()
返回一个值。你忽略了它。ready()
不是对流结束的测试:请参阅Javadoc。renameFile()
。