
JAVA读文本文件出现乱码
今天在利用JAVA读写文本文件时发现了个非常奇怪的问题,我利用BufferedReader来读取文本文件,显示出来的是乱码,但是我用BufferedWriter写到新的文...
今天在利用JAVA读写文本文件时发现了个非常奇怪的问题,我利用BufferedReader来读取文本文件,显示出来的是乱码,但是我用BufferedWriter写到新的文本文件时却是完全正确的,这是怎么一回事?
以下是我的部分代码:
File fr=new File(path);
File fw=new File(path);
InputStreamReader read = new InputStreamReader(new FileInputStream(fr));
OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(fw));
BufferedReader br=new BufferedReader(read);
BufferedWriter bw=new BufferedWriter(write);
String inline=br.readLine();
String temp="";
while(inline!=null){
temp+=inline+"\r\n";
inline=br.readLine();
}
int rc = RPDLL.sendRequestEx(temp);
bw.write(temp);
bw.close();
br.close();
以上代码能完整的写入到文件中。
但如果改内码的话,无论改成什么样的编码方式,读、写文件都是乱码,请高手指点
InputStreamReader read = new InputStreamReader(new FileInputStream(fr),"UTF-8");
BufferedReader br=new BufferedReader(read);
没用;
String inline=br.readLine();
new String(inline.getBytes("ISO-8859-1"),"UTF-8");
也没用;
StringBuffer inline=new StringBuffer();
inline.append(br.readLine());
Tomcat一直不停地在处理,不显示读出的文件,也不写入文件 展开
以下是我的部分代码:
File fr=new File(path);
File fw=new File(path);
InputStreamReader read = new InputStreamReader(new FileInputStream(fr));
OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(fw));
BufferedReader br=new BufferedReader(read);
BufferedWriter bw=new BufferedWriter(write);
String inline=br.readLine();
String temp="";
while(inline!=null){
temp+=inline+"\r\n";
inline=br.readLine();
}
int rc = RPDLL.sendRequestEx(temp);
bw.write(temp);
bw.close();
br.close();
以上代码能完整的写入到文件中。
但如果改内码的话,无论改成什么样的编码方式,读、写文件都是乱码,请高手指点
InputStreamReader read = new InputStreamReader(new FileInputStream(fr),"UTF-8");
BufferedReader br=new BufferedReader(read);
没用;
String inline=br.readLine();
new String(inline.getBytes("ISO-8859-1"),"UTF-8");
也没用;
StringBuffer inline=new StringBuffer();
inline.append(br.readLine());
Tomcat一直不停地在处理,不显示读出的文件,也不写入文件 展开
3个回答
展开全部
BufferedReader() 是创建一个数据缓冲区 转换成电脑默认的代码
你用StringBuffer 应该可以解决 因为是用类似于String 类型的字符串缓冲区
你用StringBuffer 应该可以解决 因为是用类似于String 类型的字符串缓冲区
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把内容放到StringBuffer里面试下
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询