java - 找到文件但扫描仪未读取
问题描述
我的扫描仪读取 .txt 文件时遇到问题。我已经完成了所有其他项目(据我所见),但它没有读取它。.txt 包含使用 \t 拆分的信息。
public class Bank_Test {
ArrayList<Bank> banks = new ArrayList<>();
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Bank_Test bank_test = new Bank_Test();
bank_test.fillArray();
}
private void fillArray() {
try (Scanner scan = new Scanner(new File("123.txt"))) {
String[] tokens;
String line;
Bank bank;
while (scan.hasNextLine()) {
line = scan.nextLine();
tokens = line.split("\t");
bank = new Bank(tokens[0], tokens[1], tokens[2]);
banks.add(bank);
}
System.out.println(banks);
} catch (Exception e) {
e.printStackTrace();
}
}
我在阅读文件时哪里错了?
解决方案
我找到了问题的根源。
我的 .txt 文件通过 Windows 保存为带有 ANSI 编码的 txt。将其更改为 UTF-8 可以解决问题。
希望它在未来对其他人有所帮助。
推荐阅读
- c# - 用于 ASP.NET Core 5 MVC 的 NuGet 包
- dataframe - 使用作为字符串列表的变量的 API 调用创建数据框
- css - CSS 和 Firefox 的行为与其他浏览器不同的问题
- php - 在应用程序中重置密码 OTP
- python - Pymongo 获取随机记录和记录元素
- r - 在 qplot() 上将列名称作为 dot-dot-dot 进行非标准评估
- cookies - JMeter - 如何在提取的 cookie 值中添加花括号?
- javascript - React:getBoundingClientRect 获取先前渲染的位置
- python-3.x - 迭代读取excel工作表名称,将它们拆分并保存为Python中每个工作表的新列
- typescript - 记录在多个文件中出现的 ES 模块