8.Java基础:常见IO流----->字符流中的转化流:OutputStreamWriter、InputStreamReader
来源:互联网 发布:淘宝冻结账户开通 编辑:程序博客网 时间:2024/05/22 10:44
1.这两个是转换流,他们的作用
1.在字节与字符之间做转换.
2.可以指定编码进行读写操作。
2.InputStreamReader:字节流通向字符流的桥梁
构造
newInputStreamReader(InputStream is);
public class InputStreamReader<span style="font-family: Arial, Helvetica, sans-serif;">Demo</span><span style="font-family: Arial, Helvetica, sans-serif;"> {</span><span style="white-space:pre"></span>public static void main(String[] args) throws IOException {//第一种方案InputStream is = System.in; //获取一个从键盘读取信息的输入流byte[] by= new byte[2];int length = is.read(by);System.out.println(new String(by, 0, length));////第二种方案,手动完成//在System.in外层包装一个流,这个流是字符流,可以直接使用字符流,读取字符InputStreamReader isr = new InputStreamReader(System.in);char[] ch = new char[10];int length = isr.read(ch); //一次读取一个字符System.out.println(new String(ch, 0, length));//System.out.println(String.valueOf(ch, 0, length)); //和上句话效果一样}}
3.OutputStreamWriter:是字符流通向字节流的桥樑
构造
newOutputStreamWriter(OutputStream os)
//向控制台写入一个汉字public class BufferedReader<span style="font-family: Arial, Helvetica, sans-serif;">Demo </span><span style="font-family: Arial, Helvetica, sans-serif;">{</span><span style="white-space:pre"></span>public static void main(String[] args) throws IOException {<span style="white-space:pre"></span>OutputStreamWriter osw = new OutputStreamWriter(System.out);<span style="white-space:pre"></span>osw.write("我是一个好人");<span style="white-space:pre"></span>osw.flush();<span style="white-space:pre"></span>osw.close();<span style="white-space:pre"></span>}}
4.解决编码乱码
1.原因:new InputStreamReader(InputStream is) 使用默认字符集,与系统默认编码不一样,出现乱码
解决方案:
InputStreamReader(InputStream in, String charsetName)
创建使用指定字符集的 InputStreamReader。
public class InputStreamReader<span style="font-family: Arial, Helvetica, sans-serif;">Demo</span><span style="font-family: Arial, Helvetica, sans-serif;"> {</span>//读取e盘下a.txt文件public static void main(String[] args) throws FileNotFoundException, IOException {FileInputStream fis = new FileInputStream("e:/a.txt");InputStreamReader isr = new InputStreamReader(fis); //使用UF-8字符集读取//读取文件内容while (true) {int code = isr.read(); //一次读取一个if (code == -1) {break;}System.out.println((char)code);}}}2.使用OutputStreamWriter时,如果也有编码问题
解决方案: new OutputStreamWriter(OutputStream os,String charsetname);
public class InputStreamWriter<span style="font-family: Arial, Helvetica, sans-serif;">Demo </span><span style="font-family: Arial, Helvetica, sans-serif;"> {</span>public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("e:/a.txt",true);OutputStreamWriter osw = new OutputStreamWriter(fos);osw.write("中国");osw.flush();osw.close();}}
0 0
- 8.Java基础:常见IO流----->字符流中的转化流:OutputStreamWriter、InputStreamReader
- java文件传输基础:字节字符流的转换OutputStreamWriter/InputStreamReader
- Java - IO - 转换流 - InputStreamReader - OutputStreamWriter
- Java基础---Java---IO流-----读取键盘录入、InputStreamReader、转换流、OutputStreamWriter、InputStreamReader
- 【Java.IO】I/O 字节 <-> 字符转换流 —— InputStreamReader,OutputStreamWriter(FileReader,FileWriter)
- Java IO操作——字节-字符转换流(OutputStreamWriter、InputStreamReader)
- Java IO流->处理流->转换流:InputStreamReader&OutputStreamWriter
- 【JAVA IO流之转换流OutputStreamWriter和InputStreamReader】
- Java IO流学习总结五:转换流-InputStreamReader、OutputStreamWriter
- java学习笔记:关于IO转换流InputStreamReader和OutputStreamWriter
- java IO操作:转换流--OutputStreamWriter类与InputStreamReader类
- 黑马程序员——java基础 io 转换流的应用(InputStreamReader,OutputStreamWriter)
- Java——InputStreamReader&OutputStreamWriter字符流实现文本文件复制
- 转换流InputStreamReader、OutputStreamWriter
- java中的转换流,OutputStreamWriter类与InputStreamReader
- Java IO - InputStreamReader&OutputStreamWriter
- 处理流中的转换流。InputStreamReader & OutputStreamWriter
- 黑马程序员——Java基础——IO流笔记(InputStreamReader和OutputStreamWriter使用示例)
- POJ2449-Remmarguts' Date(K短路)
- 集合
- iOS使用UICountingLabel实现数字变化的动画效果
- 【OVS2.5.0源码分析】datapath之action分析(1)
- java 字节流写入中文
- 8.Java基础:常见IO流----->字符流中的转化流:OutputStreamWriter、InputStreamReader
- JQuery 插件 Validation Plugin
- centos之lnmp
- [一类维护形态树和值树的LCT] BZOJ 3159 决战
- hdu 5437
- 数据结构实验之链表一:顺序建立链表
- memset函数解析
- JavaScript: missing ) after argument list,js获取s:property值的问题
- 数据分析基础