【慕课笔记】4-3 字节流之文件输出流FileOutputStream

4-3 字节流之文件输出流FileOutputStream



6)FileOutputStream实现了向文件中写出byte数据的方法

package com.yxt.haha;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileOutDemo1 {

	/**
	 * @param args
	 */
	public static void main(String[] args)throws IOException {
		// TODO Auto-generated method stub
		//如果该文件不存在,则直接新建;如果存在,则删除后创建(如不想被清空掉则需要追加)
		FileOutputStream out=new FileOutputStream("demo/out.dat");//构造方法后可以是文件名,文件路径或者接着追加到文件
		//FileOutputStream out=new FileOutputStream("demo/out.dat",true);//如果不存在则创建;存在则追加内容
		out.write('A');//写出了字符‘A’的低八位
		out.write('B');//写出了字符‘B’的低八位
		int a=10;//write只能写8位,那么写一个int需要写4次每次8位
		out.write(a>>>24);
		out.write(a>>>16);
		out.write(a>>>8);
		out.write(a);
		byte[] gbk="中国".getBytes("gbk");
		out.write(gbk);
		out.close();
		IOUtil.printHex("demo/out.dat");
	}
	
	public static void copyFile(File srcFile,File desFile) throws IOException{//复制文件
		if(!srcFile.exists())
			throw new IllegalArgumentException(srcFile+"文件不存在");
		if(!srcFile.isFile())
			throw new IllegalArgumentException(srcFile+"不是文件");
		FileInputStream in=new FileInputStream(srcFile);
		FileOutputStream out=new FileOutputStream(desFile);
		byte[] buf=new byte[8*1024];
		int b;
		while((b=in.read(buf, 0, buf.length))!=-1){
			out.write(buf,0,b);
			out.flush();
		}
		in.close();
		out.close();
	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值