0
当我试图从文件读取文本,底层的文本显示不正确使用LineNumberReader
LineNumberReader支持UTF-8编码
文本试图从文件中读取 -
¥ · £ · € · $ · ¢ · ₡ · ₢ · ₣ · ₤ · ₥ · ₦ · ₧ · ₨ · ₩ · ₪ · ₫ · ₭ · ₮ · ₯ · ₹
示例代码 -
FileInputStream fis = null;
try {
fis = new FileInputStream("C:\\Users\\JavaUser4\\Desktop\\checkImort.txt");
InputStreamReader streamReader = new InputStreamReader(fis, "UTF-8");
LineNumberReader reader = new LineNumberReader(streamReader);
String sLine = reader.readLine();
System.out.println(sLine);
} catch (Exception ex) {
} finally {
try {
fis.close();
} catch (IOException ex) {
}
}
输出 -
? ? ? ? ? ? $ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
请使用LineNumberReader
正确地阅读本文。我宁愿留在LineNumberReader
因为我用RandomAccessFile
,这是根据我的要求
- 打开包含UTF-8编码的文本文件的完美解决方案。
- 设置行号,我们需要从中开始读取文件。
- 从文本文件中读取25行。
- 获取偏移量的最后位置。
- 退出。
- 再次打开文件。
- 设置行号从我们需要从相同文件开始读取下25行的位置。
- 从文本文件中读取25行。
- 获取最后的偏移量。
- 依此类推。
缺点是RandomAccessFile
不支持UTF-8编码和我搬到LineNumberReader
,但同样发生在这里。请帮忙。