一時ファイルを利用してファイルの内容を置換

public class UpdateFiles {
	public static void main(String[] args) throws IOException{
		String fileName = "c:\\works\\Java\\baseFile.txt";
		File file = new File(fileName);
		String tmpFileName = file.getAbsolutePath() + Long.toString(System.currentTimeMillis());
		File tmpFile = new File(tmpFileName);

		file.renameTo(tmpFile);
		file.createNewFile();

		BufferedReader br = new BufferedReader(new FileReader(tmpFile));
		FileWriter out = new FileWriter(file);

		String line;

		Pattern p = Pattern.compile("pattern");
		Matcher m ;

		while((line = br.readLine()) != null ){
			m = p.matcher(line);
			line = m.replaceAll("replace");
			out.write(line + "\r\n");
		}

		br.close();
		tmpFile.delete();
		out.close();
	}
}