[Java核心API]IO流--文件输入输出流FileInputStream FileOutputStream

###1.文件输入输出流基础知识

package day07;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
/**JAVA IO 标准的取写操作
 * 流根据方向分为输入流与输出流,输入流InputStream用来读,输出流OutputStream用来写
 * 流又分为节点流(低级流)和处理流(高级流)
 * 低级流:读写必须建立在低级流上进行,它的数据源不明确,负责实际搬运数据的流
 * 高级流:不能独立存在(没有意义),必须处理其他流,处理其他流的目的是简化我们的读写操作
 * 文件流:用于读写文件的流,是一对低级流
 * java.io.FileInputStream:文件输入流,读
 * java.io.FileOutputStream:文件输出流,写*/
public class FOSFISDemo {
	public static void main(String[] args) throws IOException {
		/**java.io.FileOutputStream 
		 * 文件流由两种对文件的写操作:
		 * 覆盖写操作(默认操作)和追加写操作
		 * 文件输出流提供了构造方法:
		 * FileOutputStream(String path)
		 * FileOutputStream(File file)
		 * 以上两种方式创建的文件输出流都是覆盖写操作,即:该流会先将该文件(若该文件存在并已经有数据)数据清空,在开始新的写操作
		 * 文件流还支持一个第二个参数为boolean值参数的构造方法,若该值为true,则是追加写操作,即:通过该流写出的数据都是在当前文件末尾被追加的*/
//		FileOutputStream fos = new FileOutputStream("fos.txt");//文件流的覆盖写操作
		FileOutputStream fos = new FileOutputStream("fos.txt",true);//文件流的追加写操作
		String str = "You are my sunshine!";
//		byte[] buf = str.getBytes("UTF-8");
//		fos.write(buf);
		fos.write(str.getBytes("UTF-8"));
		System.out.println("文件输出流写入完毕");
		fos.close();
		
		/**java.io.FileInputStream
		 * 文件字节输入流,用来从文件中读取数据的流*/
		FileInputStream fis = new FileInputStream("fos.txt");
		byte[] bf = new byte[100];
		int len = fis.read(bf);
		String string = new String(bf,0,len,"UTF-8");
		System.out.println(string);
		System.out.println("文件输入流读取完毕");
		fis.close();
	}
}

###2.文件输入输出流实现文件复制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值