最近用BufferedReader读一个文本文件,然后再将读出的内容用PrintWriter写入到另外一个新的文件中。
之前一直没有发现这个问题,就是如果文本内容中有中文,在读出的内容和写入的内容都会出现乱码。
想了一下解决方案。
首先用BufferedReader读出的时候设置一下字符集编码:
//文件路径:filePath
File file = new File(filePath);
FileInputStream fin = new FileInputStream(file);
InputStreamReader in = new InputStreamReader(fin,"GBK");
BufferedReader br = new BufferedReader(in);
设置好了之后,会进行一些读出操作,然后再调用PrintWriter写入,当然也要设置同一个字符集编码:
File tempFile = new File(newPath);
PrintWriter tpw = null;
FileOutputStream fo = new FileOutputStream(tmpFile);
OutputStreamWriter osw = new OutputStreamWriter(fo,"GBK");
tpw = new PrintWriter(osw);
这样设置以后,中文的乱码就解决了。
学习学习。
分享到:
相关推荐
文件读写 BufferedReader BufferedWriter 去除代码后面空格 简单 readLine newLine flush
NULL 博文链接:https://lisanlai.iteye.com/blog/673253
详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader详解BufferedReader
BufferedReader 开发的结构
文件内容的读取 BufferedReader
BufferedReader 是缓冲字符输入流。它继承于Reader。 BufferedReader 的作用是为其他字符输入流添加一些缓冲功能。
没有堵塞,客户端和服务端简单的信息传递,利用了BufferedReader读。
1、在读写文件时必须的 2、File类 3、流 4、读写文件 运用FileInputStream和FileOutputStream类读写文本...运用BufferedReader和BufferedWriter类读写文本文件 运用DataInputStream和DataOutputStream类读写二进制 文件
简洁分类 代码直接使用 InputStream OutputStream ...BufferedReader BufferedWriter PrintWriter DataOutputStream DataInputStream ObjectOutputStream ObjectInputStream Scanner
BufferedReader的用法---马克-to-win java视频缓存输入流的介绍
功能非常的有限,只实现了打开文件和保存文件的功能主要是练习I/O里的BufferedReader,PrintWriter,和事件处理:监听,绑定,以及actionPerformed JAR程序,源码
NULL 博文链接:https://chaoyi.iteye.com/blog/2084140
服务器与客户都通过构造BufferedReader,PrintWriter来建立输入输出流,然后双方通过该输入输出流来相互传递信息,一旦收到客户方的连接请求,服务器accept()方法返回一个新建的Socket对象。客户端然后向服务器发送...
实现了客户端和服务端的通信,客户端可以获取座位列表并...其中使用了Java的Socket、ServerSocket、BufferedReader、PrintWriter等类来进行网络通信,以及JFrame、JPanel、JButton、JLabel等类来构建客户端的用户界面。
* 一、BufferedReader类 public class BufferedReader extends Reader * 从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。 可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下...
运用File类进行文件操作 理解流,标准输入/输出流的概念 运用FileInputStream和FileOutputStream类读写...运用BufferedReader和BufferedWriter类读写文本文件 运用DataInputStream和DataOutputStream类 读写二进制文件
主要是练习I/O里的BufferedReader,PrintWriter,和事件处理:监听,绑定,以及actionPerformed JAR程序,源码都附上,源码自己加上包名即可。 源码整体来说,思路还是很清晰。 希望对大家学习JAVA有帮助。
服务器与客户都通过构造BufferedReader,PrintWriter来建立输入输出流,然后双方通过该输入输出流来相互传递信息,一旦收到客户方的连接请求,服务器accept()方法返回一个新建的Socket对象。客户端然后向服务器发送...
主要介绍了InputStreamReader和BufferedReader用法及实例讲解的相关资料,需要的朋友可以参考下