我必须检查文本doc是否存在然后我必须替换一个字母,说a到o。我已经完成了第一部分如何替换char
class FDExists{
public static void main(String args[]){
File file=new File("trial.java");
boolean exists = file.exists();
if (!exists) {
System.out.println("the file or directory you are searching does not exist : " + exists);
}else{
System.out.println("the file or directory you are searching does exist : " + exists);
}
}
}
我已经完成了
答案 0 :(得分:2)
你不能在一行代码中这样做。
您必须读取文件(使用InputStream),修改内容并将其写入文件(使用OutputStream)。
示例代码。我省略了try / catch / finally块以更好地理解算法,但在实际代码中,你必须添加具有正确资源解放权的块。您也可以用系统行分隔符替换“\ n”,并用参数替换“a”和“o”。
public void replaceInFile(File file) throws IOException {
File tempFile = File.createTempFile("buffer", ".tmp");
FileWriter fw = new FileWriter(tempFile);
Reader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
while(br.ready()) {
fw.write(br.readLine().replaceAll("a", "o") + "\n");
}
fw.close();
br.close();
fr.close();
// Finally replace the original file.
tempFile.renameTo(file);
}