VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > Java教程 >
  • Java连载97-FileOutputStream详解以及文件复制

一、FileOutputStream详解

1.该类的构造方法,有第二个参数

FileOutputStream(String address,boolean append)

append默认false,也就是新的写入会覆盖原来的东西。改为true的话,也就是以追加的形式写入文件

 

复制代码
package com.bjpowernode.java_learning;

import java.io.*;

public class D97_1_FileOutputStream {

  public static void main(String[] args){

    //1.创建文件输出字符流

    FileOutputStream f1 = null;

    try {

      

      f1 = new FileOutputStream("C:\\Users\\lenovo1\\Workspaces\\MyEclipse CI\\Java_learning\\src\\com\\bjpowernode\\java_learning\\temp1.txt");

     

      //参数中的文件如果不存在的话,就会自动创建

      //2.开始写

      //推荐最后的时候为了保证数据完全写入硬盘,所以要刷新

      String msg = "HelloWorld";

      f1.flush();//强制写入

      //将String转换成byte数组

      byte[] bytes = msg.getBytes();

      f1.write(bytes);

      //如果带参数,即write(Object o,int a,int b)代表对象o的第a个字符到第b个字符写入文件

     

    }catch(Exception e1) {

      e1.printStackTrace();

    }finally{

      //关闭

      if(f1 != null) {

        try {

          f1.close();

        }catch(Exception e) {

          e.printStackTrace();

        }

      }

    }

  }

}
复制代码

​二、文件的复制

 

复制代码
package com.bjpowernode.java_learning;

import java.io.*;

public class D97_2_CompleteCopyFile {

  public static void main(String[] args) throws IOException,FileNotFoundException{

    //创建输入流

    FileInputStream f1 = new FileInputStream("C:\\Users\\lenovo1\\Workspaces\\MyEclipse CI\\Java_learning\\src\\com\\bjpowernode\\java_learning\\temp1.txt");

    //创建输出流

    FileOutputStream f2 = new FileOutputStream("C:\\Users\\lenovo1\\Workspaces\\MyEclipse CI\\Java_learning\\src\\com\\bjpowernode\\java_learning\\temp2.txt");

    //一边读一边写

    byte[] bytes = new byte[1024];//1kb;

    int temp = 0;

    while((temp=f1.read(bytes)) != -1){

      //将byte数组中的内容直接写入

      f2.write(bytes);

    }

    //刷新

    f2.flush();

    //关闭

    f1.close();

    f2.close();       

  }

}
复制代码

 

三、源码:

D97_1_FileOutputStream.java

D97_2_CompleteCopyFile.java

https://github.com/ruigege66/Java/blob/master/D97_1_FileOutputStream.java

https://github.com/ruigege66/Java/blob/master/D97_2_CompleteCopyFile.java


出  处:https://www.cnblogs.com/ruigege0000/p/12495390.html


相关教程