1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java读取txt文件出现中文乱码

java读取txt文件出现中文乱码

时间:2019-08-28 16:13:25

相关推荐

java读取txt文件出现中文乱码

在保证代码没有问题的前提下,读取txt文件出现了如下乱码。

解决方法:

1.查看文件代码的编码方式是否是ANSI(我使用的文本编辑器为EditPlus)

2.查看.txt文件的编码方式是否是ANSI

修改保存,结果如下

这里附如上读取txt文件的代码。

import java.io.*;import java.util.Scanner;public class ReadLine2 {//输出本行内容及字符数static void readLineVarFile(String fileName, int lineNumber) throws IOException {BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(fileName))); //使用缓冲区的方法将数据读入到缓冲区中String line = reader.readLine(); //定义行数if (lineNumber <= 0 || lineNumber > getTotalLines(fileName)) //确定输入的行数是否有内容{System.out.println("不在文件的行数范围之内。"); } int num = 0; while (line != null) //当行数不为空时,输出该行内容及字符数{if (lineNumber == ++num) {System.out.println("第" + lineNumber + "行: " + line); } line = reader.readLine(); } reader.close(); } // 文件内容的总行数 static int getTotalLines(String fileName) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(fileName))); 使用缓冲区的方法将数据读入到缓冲区中LineNumberReader reader = new LineNumberReader(br); String s = reader.readLine(); //定义行数int lines = 0; while (s != null) //确定行数{lines++; s = reader.readLine(); } reader.close(); br.close(); return lines; //返回行数} public static void main(String[] args) throws IOException {String fileName = "E:/java task/cookie reader/南渡北归(三部曲).txt"; // 读取文件 int totalNo = getTotalLines(fileName); // 获取文件的内容的总行数System.out.println("本文总共有:"+totalNo+ "行"); while(true){Scanner sc=new Scanner(System.in);int lineNumber =sc.nextInt(); // 指定读取的行号 readLineVarFile("E:/java task/cookie reader/南渡北归(三部曲).txt", lineNumber); //读取指定行的内容 }} }

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。