java中写文件操作是可以使用FileOutputStream()和FileWriter()两种方法,但是两种方法产生的结果却不同。

方法一:使用FileOutputStream(),每次程序运行后会产生一个新的文件,如果这个新的文件在相同目录下已经有同名文件存在,则覆盖掉该文件,只显示本次执行的结果。

eg:FileOutputStream resultsFile = new FileOutputStream("C:\\result.txt");
      PrintStream toFile = new PrintStream( resultsFile );

output:       <BEGIN>
              type: data
              survey: Survey01Results
              node: 15
              startTime: 2005-09-12 12:39:27
              endTime: 2005-09-15 23:39:27
              <END>

方法二:使用FileWriter()时,每次程序运行后如果产生的文件在相同目录下有同名文件存在,则在原来文件内容后面续写,而不是覆盖。

eg:FileWriter resultsFile = new FileWriter("C:\\result.txt", true);
       PrintWriter toFile = new PrintWriter(resultsFile);

output:    <BEGIN>
             type: data
             survey: Survey01Results
             node: 15
             startTime: 2005-09-12 12:39:27
             endTime: 2005-09-15 23:39:27
             <END>
             <BEGIN>
             type: data
             survey: Survey02Results
             node: 86
             startTime: 2005-08-17 18:46:27
             endTime: 2005-12-21 00:12:36
             <END>