用FileReader和FileWriter处理中文时的问题
用FileReader和FileWriter处理中文时,txt文件里和控制台显示的全是乱码,用FileInputStream和FileOutputStream读写中文文件...
用FileReader和FileWriter处理中文时,txt文件里和控制台显示的全是乱码,用FileInputStream和FileOutputStream读写中文文件在txt文件里就没问题 但是在控制台输出还是乱码求高手解释
新建了一个txt文件,里面有中文
用FileReader和FileWriter读取该文件并写入另一个文件时,新txt文件里和控制台显示的中文部分的全是乱码,用FileInputStream和FileOutputStream读写中文文件在新txt文件里就没问题 但是在控制台输出还是乱码求高手解释 展开
新建了一个txt文件,里面有中文
用FileReader和FileWriter读取该文件并写入另一个文件时,新txt文件里和控制台显示的中文部分的全是乱码,用FileInputStream和FileOutputStream读写中文文件在新txt文件里就没问题 但是在控制台输出还是乱码求高手解释 展开
1个回答
展开全部
java的输入输出流都是可以设置编码的,在读取包含汉字的文本时,你可以将输入流的编码设置为GBK格式。你可以尝试以下方式读取文本,希望对你有帮助。
FileInputStream fis = null ;
try {
fis = new FileInputStream("文件路径名"); //创建文件输入流
InputStreamReader isr = new InputStreamReader(fis,"GBK"); //指定读取流为GBK编码格式
BufferedReader br = new BufferedReader(isr); //创建字符缓存输入流
String str ="";
while((str=br.readLine()) != null){
System.out.println(str); //读取每行文本
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
if(fis != null){
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
FileInputStream fis = null ;
try {
fis = new FileInputStream("文件路径名"); //创建文件输入流
InputStreamReader isr = new InputStreamReader(fis,"GBK"); //指定读取流为GBK编码格式
BufferedReader br = new BufferedReader(isr); //创建字符缓存输入流
String str ="";
while((str=br.readLine()) != null){
System.out.println(str); //读取每行文本
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
if(fis != null){
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
威孚半导体技术
2024-08-19 广告
2024-08-19 广告
威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层...
点击进入详情页
本回答由威孚半导体技术提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询