java - 在 txt 文件中,在三个字符串之间使用逗号作为分隔符。但是文件中的某些行在第二个字符串中有逗号
问题描述
有一个 file.txt 包含:
国家、省/州、城市
所以我想用“,”作为我的分隔符。但是,此文件的某些行具有:
Country,"Name1 和 Name2, Province of",City
因此,使用逗号作为分隔符不会像上面的示例那样作为省名称中的逗号起作用。
这是我的代码:
String path = workingDir + "/src/main_pkg/File.txt";
File file = new File(path);
Scanner sc = null;
try {
sc = new Scanner(file);
} catch (FileNotFoundException e) {
System.out.println(new File("."));
e.printStackTrace();
}
ObservableList<String> listOfProvinces = FXCollections.observableArrayList();
String country;
String state= "";
String lastState = "";
sc.useDelimiter(",");
while (sc.hasNext()) {
country = sc.next();
province = sc.next();
if (country.matches(countryComboBox.getValue())) {
if (!province.matches(lastState)) {
listOfStates.add(state);
lastState = state;
}
}
sc.nextLine();
}
sc.close();
为了澄清,我无法修改 txt 文件。
解决方案
我找到了解决方案。我不得不将分隔符更改为:
sc.useDelimiter("(?!\"),(?!\")");
我从中得到:https ://stackoverflow.com/a/1757146/12179513 Java的答案:拆分逗号分隔的字符串但忽略引号中的逗号也可以,但这会使我的程序运行时间更长。
推荐阅读
- java - 在同一个 Kafka 主题中监听多种类型的对象
- wordpress - Woocommerce 类别/子类别/产品 404 错误
- python - 网络抓取问题:无法使用特斯拉股价从 MacroTrends 检索正确的表格(季度股价)
- python - 如何获取键值对以从嵌套字典创建字典?
- html - 圆形进度条,外笔画末端有一个小圆圈
- reactjs - 在 MERN 堆栈中集成 UPI 支付
- opencv - 如何从手写文本图像中去除背景噪音?
- python - 我正在尝试执行加入功能以获取
- inline - CouchCMS 博客索引项目以内联方式显示 (blog_list.html)
- python - 如何将检查点文件转换为 .ckpt 文件?