将字节流转换成字符流详细例子

转换流:将字节流转换字符流

 

(1)输入字节流转换输入字符流的 转换的方法:

将输入字节流转换成输入字符流:inputStreamReader();

辅助:(一般字符流按照行读,或者读入都用BufferedReader

BufferedReader 可以中的readLine可以一行一行的读。而read()只能一个字符读。

 

案例1:程序:从控制台输入字符,按行输出?

(1)system.in是返回字节流不是字符流。

(2)字节流需要转换成字符流才能输出汉字。

(3)按行输出。

InputStream in = System.in;

InputStreamReader readers = new InputStreamReader(in);

BufferedReader buf = new BufferedReader(readers);

String str = null;

while((str = buf.readLine())!=null){

System.out.println(str);

}

readers.close();

buf.close();

 

(2)输出字节流转换成输出字符流?

OutputStreamWrite();

 

 

(3)字符串到一个文件并且指定编码格式?

     如果是仅仅是将字符串写入文件。可以用filewriter()

同时要求指定编码格式,就需要用到转换流了。

File fi = new File("e:\\t.txt");

FileOutputStream fo = new FileOutputStream(fi);

OutputStreamWriter ww = new OutputStreamWriter(fo,"utf-8");

ww.write("现在在哪里");

ww.close();

fo.close();

4以指定的格式(utf-8),从文件读出数据?

File fi = new File("e:\\t.txt");

FileInputStream fin = new FileInputStream(fi);

InputStreamReader reads = new InputStreamReader(fin,"utf-8");

char[] sh = new char[1024];

int len;

while((len = reads.read(sh))!=-1){

System.out.println(new String(sh,0,len));

}

欢迎关注我的微信公众号,会分享一些文章,希望大家能一起学习:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值