io 测试

//其中能够实现编码的只有OutputStreamWriter和对应inputStreamReader 
package net;

import java.io.BufferedWriter;
import java.io.File;
import java.io.IOException;
import java.io.OutputStreamWriter;

import java.io.FileOutputStream;

import java.io.*;

public class FileIoTest {

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

		FileOutputStream out = null; //只能输出二进制   byte

		FileOutputStream outSTr = null;

		BufferedOutputStream Buff = null;

		FileWriter fw = null;
		
		BufferedWriter bf = null;
		
		WebContent webcontent =new WebContent();
		
		String url ="http://www.baidu.com/";
		
		String htmlContent = webcontent.getOneHtml(url);

		int count = 1;// 写文件行数

		try {
/****************************采用FileOutputStream方式*************************************************************/
			out = new FileOutputStream(new File("D:/FileOutputStream.html"));
      
			long begin = System.currentTimeMillis();

			for (int i = 0; i < count; i++) {

				out.write(htmlContent.getBytes());

			}
			out.close();

			long end = System.currentTimeMillis();

			System.out.println("FileOutputStream执行耗时:" + (end - begin) + " 豪秒");
/************************************采用BufferedOutputStream方式********************************************************/
			outSTr = new FileOutputStream(new File("D:/BufferedOutputStream.html"));

			Buff = new BufferedOutputStream(outSTr);

			long begin0 = System.currentTimeMillis();

			for (int i = 0; i < count; i++) {

				Buff.write(htmlContent.getBytes());

			}

			Buff.flush();

			Buff.close();

			long end0 = System.currentTimeMillis();

			System.out.println("BufferedOutputStream执行耗时:" + (end0 - begin0)
					+ " 豪秒");
/*********************************采用FileWriter方式**********************************************************/
			fw = new FileWriter("D:/FileWriter.html");

			long begin3 = System.currentTimeMillis();

			for (int i = 0; i < count; i++) {

				fw.write(htmlContent);

			}

			fw.close();

			long end3 = System.currentTimeMillis();

			System.out.println("FileWriter执行耗时:" + (end3 - begin3) + " 豪秒");
/************************************采用BufferWrite***********************************************************/
			OutputStream o1 = new FileOutputStream("D:"+File.separator+"BufferedWriter.html");
			OutputStreamWriter fw1 = new OutputStreamWriter(o1,"UTF-8");
			
			 bf = new BufferedWriter(fw1);
			
			long begin4 = System.currentTimeMillis();

			for (int i = 0; i < count; i++) {

				bf.write(htmlContent);

			}
            
			fw1.flush();
			
			fw1.close();

			long end4 = System.currentTimeMillis();

			System.out.println("BufferedWriter执行耗时:" + (end4 - begin4) + " 豪秒");
		} catch (Exception e) {

			e.printStackTrace();

		}

		finally {

			try {

				fw.close();

				Buff.close();

				outSTr.close();

				out.close();

			} catch (Exception e) {

				e.printStackTrace();

			}

		}

	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值