转载(java向txt中写入字符串的几种方式以及效率)

    <div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307" data-dsm="post">
                <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-e2445db1a8.css">
                    <div class="htmledit_views">



1.PrintWriter


  
  
  1. try {
  2. PrintWriter pw= new PrintWriter( "D://1.txt");
  3. for( int i= 0;i< 500000;i++){
  4. pw.write( "我是一颗自由小星星");
  5. }
  6. pw.flush();
  7. pw.close();
  8. } catch (FileNotFoundException e) {
  9. // TODO Auto-generated catch block
  10. e.printStackTrace();
  11. }


2.FileWriter


  
  
  1. FileWriter writer;
  2. try {
  3. writer = new FileWriter( "D://1.txt", true);
  4. for( int i= 0;i< 500000;i++){
  5. writer.write( "我是一颗自由小星星");
  6. }
  7. writer.flush(); //刷新内存,将内存中的数据立刻写出。
  8. writer.close();
  9. } catch (IOException e) {
  10. e.printStackTrace();
  11. }


3.FileOutputStream


  
  
  1. String str="我是一颗自由小星星";
  2. byte[] b = str.getBytes();
  3. File file= new File( "D://1.txt");
  4. try {
  5. file.createNewFile();
  6. FileOutputStream fos= new FileOutputStream(file);
  7. for( int i= 0;i< 500000;i++){
  8. fos.write(b);
  9. }
  10. fos.flush();
  11. fos.close();
  12. } catch (FileNotFoundException e) {
  13. // TODO Auto-generated catch block
  14. e.printStackTrace();
  15. } catch (IOException e) {
  16. // TODO Auto-generated catch block
  17. e.printStackTrace();
  18. }
4.FileWriter和BufferedWriter1
            FileWriter fw;
  
  
            File file=new File("D://1.txt");
  
  
try {fw = new FileWriter(file);BufferedWriter bw = new BufferedWriter (fw);for(int i=0;i<count;i++){fw.write(“我是一颗自由小星星”);}fw.close(); fw.close(); } catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}
 
 
5.FileWriter和BufferedWriter2

                FileWriter fw;
  
  
                File file=new File("D://1.txt");
  
  
try {fw = new FileWriter(file);BufferedWriter bw = new BufferedWriter (fw);for(int i=0;i<500000;i++){bw.write(“我是一颗自由小星星”);}bw.flush();bw.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}
 
 
6.PrintWriter和BufferedWriter3


  
  
  1. PrintWriter fw;
  2. try {
  3. fw = new PrintWriter( "D://1.txt");
  4. BufferedWriter bw = new BufferedWriter (fw);
  5. for( int i= 0;i< 500000;i++){
  6. bw.write( "我是一颗自由小星星");
  7. }
  8. bw.flush();
  9. bw.close();
  10. } catch (IOException e) {
  11. // TODO Auto-generated catch block
  12. e.printStackTrace();
  13. }


7.PrintWriter和BufferedWriter4


  
  
  1. PrintWriter fw;
  2. try {
  3. fw = new PrintWriter("D://1.txt");
  4. BufferedWriter bw = new BufferedWriter (fw);
  5. for(int i=0;i <500000;i++){
  6. fw.write("我是一颗自由小星星");
  7. }
  8. fw.flush();
  9. fw.close();
  10. } catch (IOException e) {
  11. // TODO Auto-generated catch block
  12. e.printStackTrace();
  13. }


8.OutputStreamWriter和BufferedWriter5

                OutputStreamWriter fw;
  
  
               File file=new File("D://1.txt");      
  
  
try {OutputStream outputstream =new FileOutputStream(file);fw = new OutputStreamWriter(outputstream);BufferedWriter bw = new BufferedWriter (fw);for(int i=0;i<count;i++){fw.write(“我是一颗自由小星星”);}fw.flush();fw.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}
 
 
执行效率对比

文件大小—15820KB


1—printWriter  time  383.0毫秒

2—fileWriter  time  394.0毫秒

3—fileOutputStream  time  4059.0毫秒

4—bufferedWriter1_FileWriter  time  258.0毫秒

5—bufferedWriter2_filewriter  time  167.0毫秒

6—bufferedWriter3_printwriter  time  178.0毫秒

7—bufferedWriter4_printwriter  time  176.0毫秒

8—bufferedWriter5_outputstreamwriter  time  269.0毫秒


文件大小—158203KB


1—printWriter  time  2383.0毫秒

2—fileWriter  time  2941.0毫秒

3—fileOutputStream  time  39663.0毫秒

4—bufferedWriter1_FileWriter  time  2374.0毫秒

5—bufferedWriter2_filewriter  time  1584.0毫秒

6—bufferedWriter3_printwriter  time  1913.0毫秒

7—bufferedWriter4_printwriter  time  1574.0毫秒

8—bufferedWriter5_outputstreamwriter  time  2500.0毫秒



文件大小—1582031KB

1—printWriter  time  22574.0毫秒

2—fileWriter  time  23056.0毫秒

3—bufferedWriter1_FileWriter  time  23106.0毫秒

4—bufferedWriter2_filewriter  time  16555.0毫秒

5—bufferedWriter3_printwriter  time  19872.0毫秒

6—bufferedWriter4_printwriter  time  17662.0毫秒

7—bufferedWriter5_outputstreamwriter  time  22536.0毫秒


文件大小—3515625KB

1—printWriter  time  51450.0毫秒

2—fileWriter  time  55853.0毫秒

3—bufferedWriter1_FileWriter  time  50722.0毫秒

4—bufferedWriter2_filewriter  time  35656.0毫秒

5—bufferedWriter3_printwriter  time  43913.0毫秒

6—bufferedWriter4_printwriter  time  37597.0毫秒

7—bufferedWriter5_outputstreamwriter  time  50935.0毫秒


文件大小—351562KB
1—bufferedWriter2_filewriter  time  4080.0毫秒

2—bufferedWriter3_printwriter  time  3855.0毫秒

3—bufferedWriter4_printwriter  time  3220.0毫秒


文件大小—351562KB
1—bufferedWriter2_filewriter  time  3809.0毫秒

2—bufferedWriter3_printwriter  time  3833.0毫秒

3—bufferedWriter4_printwriter  time  3176.0毫秒

文件大小—351562KB
1—bufferedWriter2_filewriter  time  3834.0毫秒

2—bufferedWriter3_printwriter  time  3878.0毫秒

3—bufferedWriter4_printwriter  time  3184.0毫秒


文件大小—351562KB
1—bufferedWriter2_filewriter  time  3969.0毫秒

2—bufferedWriter3_printwriter  time  3876.0毫秒

3—bufferedWriter4_printwriter  time  3315.0毫秒


文件大小—351562KB
1—bufferedWriter4_printwriter  time  4903.0毫秒

2—bufferedWriter2_filewriter  time  3035.0毫秒

3—bufferedWriter3_printwriter  time  3719.0毫秒

文件大小—351562KB
1—bufferedWriter3_printwriter  time  4003.0毫秒

2—bufferedWriter4_printwriter  time  4708.0毫秒

3—bufferedWriter2_filewriter  time  3871.0毫秒












猜你喜欢

转载自blog.csdn.net/weixin_42707253/article/details/81904861
今日推荐