字节流与字符流操作转换

/** * * @author ASUS * 实现字节流与字符流操作转换 * *
字符虽然需要进行缓冲区进行处理,但是有一个问题千万不能忽略,字符输出流有一个特点: *
可以直接输出字符串数据,所以有些时候就不得不进行字节流与字符流的操作转换。 * 在java。io里面提供有两个类 *
InputStreamReader OutStreamWriter 定义 构造方法 * *InputStreamReader:
public class InputStreamReader extends Reader * public
InputStreamReader(InputStream in) * *OutStreamWriter:public class
OutputStreamWriter extends Writer * public
OutputStreamWriter(OutputStream out) *
*因为此处没有OutputStream类的对象,所以此处自己造的OutputStream,但是这种转换的已有不打,只有一种情况下 *有可能会用到这种的转换:方便处理中文数据 * *请观察类的继承结构: * FileIntputStream类的继承结构 *
java.lang.Object
java.io.InputStream
java.io.FileInputStream * *
FileOutputStream类的继承结构 *
java.lang.Object
java.io.OutputStream
java.io.FileOutputStream

    • FileInputStream 与FileOutputStream都是InputStream与OutputStream直接子类, *
  • FileReader继承结构

  • java.lang.Object
    java.io.Reader
    java.io.InputStreamReader
    java.io.FileReader *

  • FileWriter继承结构

  • java.lang.Object
    java.io.Writer
    java.io.OutputStreamWriter
    java.io.FileWriter

      		  *  文件保存在磁盘上,磁盘上能够保存多的文件形式都是以字节的方式保存,而在使用字符流读取的时候实际上也是  *  针对于字节数据进行读取,只不过这个转换过程被操作系统给隐藏了,在缓冲区里面进行了数据的操作  *    */
    
package wenjiancaozuo;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;




public class zhuanhuanlei {

	public static void main(String[] args) throws IOException {
		// TODO 自动生成的方法存根
		
		File file1 = new File("E:"+File.separator+"demo"+File.separator+"my.txt");
		if(!file1.getParentFile().exists())
		{
			file1.getParentFile().mkdirs();
		}
		OutputStream outputStream = new FileOutputStream(file1); /// 字节流
		
		/// 将OutputStream对象传递给OutputStreamWriter类的构造方法,而后向上转型为Writer
		Writer outWriter  =  new OutputStreamWriter(outputStream);
		
		outWriter.write("Hello world!");  /// writer方法 
		
		outputStream.close();
		
		
	}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值