Java IO InputStreamReader
很多的文本文件会有不同的编码格式,造成这种编码差异的可能是系统的差异,可能是在保存文件时采用特定的字符集编码来保存。这时我们利用Java语言来打开这些文本时,如果不使用正确的字符集解码器打开,肯定会出现乱码。好在java.io包提供了一个java.io.InputStreamReader类来支持指定文本字符集编码,以正确显示文本。
而对于采用特定的字符集编码格式将文本内容写入文件当中,我们则可以采用OutputStream中的write(String.getBytes("gb2312"))方法;其中的gb2312可以是其他的字符集编码格式,如"gbk","utf-8"等等。
示例代码如下:
//读取文本
InputStream in = new FileInputStream("allfilename");
InputStreamReader isr = new InputStreamReader(in, charsetName);
BufferedReader br = new BufferedReader(isr);
//写文本
OutputStream out = new FileOutputStream("allfilename");
out.write("string字符串".getBytes("gbk"));
这样就可完成对于特定字符集编码的文档的读写(IO)操作。
相关文档:
一、Java基础知识
1.Java
有那些基本数据类型,String是不是基本数据类型,他们有何区别。
2.字符串的操作:
写一个方法,实现字符串的反转,如:输入abc,输出cba
写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出bbbhhtccc。
3.数据类型之间的转换
如何将数值型字符转换为数字 ......
http://www.cn-java.com/www1/?action-viewnews-itemid-3295
我想JAVA的爱好者,尤其是初学者大都有过这样的经历,就是喜欢JAVA编程语言(这个人的情况可能不一样),但是有时候总会觉得JAVA的优点便是她的“致命”的缺点。大家的信念依旧是“一次编译,到处运行”但是就是因为至一点JAVA ......
首先请大家看看下面两段代码有什么区别:
代码1:
List<Task> tasks = new ArrayList<Task>();
Task[] allTask = DemoData.getTasksData();
for(int i=0;i<allTask.length;i++){
tasks.add(allTask[i]);
}
------------------------------------- ......
面向对象编程有三个特征,即封装、继承和多态。
封装隐藏了类的内部实现机制,从而可以在不影响使用者的前提下改变类的内部结构,同时保护了数据。
继承是为了重用父类代码,同时为实现多态性作准备。那么什么是多态呢?
方法的重写、重载与 ......