10. Java IO流2

第三节:字节输入,输出流

1,InputStream读取文件

2,OutputStream写入文件

3,BufferedInputStream和fBuferedOutputStream

4,缓冲和非缓冲的区别及性能对比

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class Demo1 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		InputStream inputStream=new FileInputStream(file);  // 实例化FileInputStream
		byte b[]=new byte[1024];
		int len=inputStream.read(b);
		inputStream.close(); // 关闭输入流
		System.out.println("读取的内容是:"+new String(b,0,len));
	}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class Demo2 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		InputStream inputStream=new FileInputStream(file);  // 实例化FileInputStream
		int fileLength=(int)file.length();
		byte b[]=new byte[fileLength];
		inputStream.read(b);
		inputStream.close(); // 关闭输入流
		System.out.println("读取的内容是:"+new String(b));
	}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class Demo3 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		InputStream inputStream=new FileInputStream(file);  // 实例化FileInputStream
		int fileLength=(int)file.length();
		byte b[]=new byte[fileLength];
		int temp=0;
		int len=0;
		while((temp=inputStream.read())!=-1){
			// 一个字节一个字节读取,放到b字节数组里
			b[len++]=(byte)temp;
		}
		inputStream.close(); // 关闭输入流
		System.out.println("读取的内容是:"+new String(b));
	}
}
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

public class Demo4 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		OutputStream out=new FileOutputStream(file);
		String str="你好,我好,大家好,Java好";
		byte b[]=str.getBytes();
		out.write(b); //  将b字节数组写入到输出流
		out.close();  // 关闭输出流
	}
}
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

public class Demo5 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		OutputStream out=new FileOutputStream(file,true);
		String str="你好,我好,大家好,Java好2321312312";
		byte b[]=str.getBytes();
		out.write(b); //  将b字节数组写入到输出流
		out.close();  // 关闭输出流
	}
}
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

public class Demo6 {

	/**
	 * 缓冲
	 * @throws Exception
	 */
	public static void bufferStream()throws Exception{
		// 定义了一个带缓冲的字节输入流
		BufferedInputStream bufferedInputStream=new BufferedInputStream(new FileInputStream("D://《一脚踹进J2SE》视频笔录2.doc"));
		// 定义了一个带缓冲的字节输出流
		BufferedOutputStream bufferedOutputStream=new BufferedOutputStream(new FileOutputStream("F://赋值的文件2.doc"));
		int b=0;
		long startTime=System.currentTimeMillis(); // 开始时间
		while((b=bufferedInputStream.read())!=-1){
			bufferedOutputStream.write(b);
		}
		bufferedInputStream.close();
		bufferedOutputStream.close();
		long endTime=System.currentTimeMillis();  // 结束时间
		System.out.println("缓冲花费的时间是:"+(endTime-startTime));
	}
	
	/**
	 * 非缓冲
	 * @throws Exception
	 */
	public static void stream() throws Exception{
		InputStream inputStream=new FileInputStream("D://《一脚踹进J2SE》视频笔录.doc");  // 定义一个输入流
		OutputStream outputStream=new FileOutputStream("F://赋值的文件.doc");
		int b=0;
		long startTime=System.currentTimeMillis(); // 开始时间
		while((b=inputStream.read())!=-1){
			outputStream.write(b);
		}
		inputStream.close();
		outputStream.close();
		long endTime=System.currentTimeMillis();  // 结束时间
		System.out.println("非缓冲花费的时间是:"+(endTime-startTime));
	}
	
	public static void main(String[] args)throws Exception {
		stream();
		bufferStream();
	}
}

第四节:字符输入,输出流

1,Reader读取文件

2,Writer写入文件

import java.io.File;
import java.io.FileReader;
import java.io.Reader;

public class Demo1 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		Reader reader=new FileReader(file);
		char c[]=new char[1024]; // 字符数组
		int len=reader.read(c);
		reader.close();  // 关闭输入流
		System.out.println("读取的内容是:"+new String(c,0,len));
	
import java.io.File;
import java.io.FileReader;
import java.io.Reader;

public class Demo2 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		Reader reader=new FileReader(file);
		char c[]=new char[1024]; // 字符数组
		int temp=0;
		int len=0;
		while((temp=reader.read())!=-1){
			c[len++]=(char)temp;
		}
		reader.close();  // 关闭输入流
		System.out.println("读取的内容是:"+new String(c,0,len));
	}
}
import java.io.File;
import java.io.FileWriter;
import java.io.Writer;

public class Demo3 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		Writer out=new FileWriter(file);
		String str="我爱中华";
		out.write(str);  // 将字符串写入输出流
		out.close();  // 关闭输出流
	}
}
import java.io.File;
import java.io.FileWriter;
import java.io.Writer;

public class Demo3 {

	public static void main(String[] args) throws Exception {
		File file=new File("D://测试文件.txt");
		Writer out=new FileWriter(file);
		String str="我爱中华";
		out.write(str);  // 将字符串写入输出流
		out.close();  // 关闭输出流
	}
}


你可能感兴趣的:(10. Java IO流2)