java IO流--转化流和字节流字符流的性能对比

//字符转换流
	static void other() throws IOException {
		File file=new File("文件1");
		File file1=new File("文件2");
		
		//使用缓冲流来实现字节流和字符流之间的转化
		//以下是将字节流转化为字符流
		BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(file)));
		//将字符流转化为字节流
		BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file1)));
		String ling=null;
		//原来readLine()方法在进行读取一行时,只有遇到回车(\r)或者换行符(\n)才会返回读取结果,这就是“读取一行的意思”,重要的是readLine()返回的读取内容中并不包含换行符或者回车符;
		//简单的说,就是
		//并且,当realLine()读取到的内容为空时,并不会返回 null,而是会一直阻塞,只有当读取的输入流发生错误或者被关闭时,readLine()方法才会返回null。
		while ((ling=br.readLine())!=null) {
			
			bw.write(ling);
		}
		bw.close();
		br.close();
	}

//不使用缓冲流,缓冲流里面只能存放字符输入流,如果要存放字节流,就只能将字节流转化为字符流
	static void show() throws IOException {
		File file=new File("src\\FilesList\\read.txt");
		File file2=new File("src\\FilesList\\read1.txt");
		BufferedReader bReader=new BufferedReader(new FileReader(file));
		BufferedWriter bWriter=new BufferedWriter(new FileWriter(file2));
		String lenString=null;
		while ((lenString=bReader.readLine())!=null) {
			bWriter.write(lenString);	
		}
		bWriter.close();
		bReader.close();	
	}

//字符流--53
		public static void readerAndWriter() throws IOException{
			File file=new File("src\\com\\ddd");
			File file2=new File("src\\com\\ddd2");
			Reader reader=new FileReader(file);
			Writer writer=new FileWriter(file2);
			char[] data=new char[10];
			int length=0;
			while((length=reader.read(data))!=-1) {
//				writer.write(new String(data,0,length));
				writer.write(data,0,length);
			}
			writer.close();
			reader.close();
		}


//字节缓冲流
		static void m3() throws IOException {
			File file=new File("src\\com\\ddd");
			File file2=new File("src\\com\\ddd2");
			BufferedInputStream bis=new BufferedInputStream(new FileInputStream(file));
			BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(file2));
			byte[] data=new byte[105];
			int len=0;
			while((len=bis.read(data))!=-1) {
				bos.write(data, 0, len);
			}
			bos.flush();
			bos.close();
			bis.close();
		}


//字节流
		static void m4() throws IOException {
			File file=new File("");
			File file2=new File("");
			FileInputStream fis=new FileInputStream(file);
			FileOutputStream fos= new FileOutputStream(file2);
			byte[] bs=new byte[3];
			int len;
			while((len=fis.read(bs))!=-1) {
				fos.write(bs);
			}
			fos.close();
			fis.close();
		}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值