如何从Java中的txt文件中读取2个特定列?
如何从txt文件中读取2个特定列(第1列和第3列)。主要的问题是,这些列由不同的分隔符分隔(我想忽略第二列,其中写入了(base 16)。还有,如何跳过列标题。 txt文件如下所示:如何从Java中的txt文件中读取2个特定列?,java,regex,hashmap,delimiter,file-handling,Java,Regex,Hashmap,Delimiter,File Handling,如何从txt文件中读取2个特定列(第1列和第3列)。主要的问题是,这些列由不同的分隔符分隔(我想忽略第二列,其中写入了(base 16)。还有,如何跳过列标题。 txt文件如下所示: IOU/AB-L Organization company_id
IOU/AB-L Organization
company_id Organization
Address
D0-AB-DB (hex) Ahenhen ViewAt Technology Co.,Ltd.
D0ABDB (base 16) Ahenhen ViewAt Technology Co.,Ltd.
9A,Microprofit,6th Gaoxin South Road, High-Tech
Industrial Park, Nanshan, henzhen.
henzhen guangdong 51867
DN
42-05-F5 (hex) Integrated Technology (Malaysia) Sdn. Bhd.
4205F5 (base 16) Integrated Technology (Malaysia) Sdn. Bhd.
Phase 1, Bayan Aepas FIZ
Bayan Lepas Penang 11923
NY
我正在尝试下面的代码。但它不起作用
String line;
BufferedReader reader = new BufferedReader(new FileReader(path));
while ((line = reader.readLine()) != null) {
String[] parts = line.split(" ", 3);
if (parts.length >= 3) {
String key = parts[0];
String value = parts[2];
System.out.println("Key value pair is " + key + " " + value);
map.put(key, value);
} else {
System.out.println("ignoring line: " + line);
}
}
所以基本上我想读第一行的
D0-AB-DB
和Ahenhen ViewAt Technology Co.,Ltd.
,然后我想读第二行的42-05-F5
和集成技术(马来西亚)有限公司的
在这种情况下,我应该使用什么正则表达式。一个示例代码会很有帮助
提前谢谢 重新编写while循环,如下所示:
IOU/AB-L Organization
company_id Organization
Address
D0-AB-DB (hex) Ahenhen ViewAt Technology Co.,Ltd.
D0ABDB (base 16) Ahenhen ViewAt Technology Co.,Ltd.
9A,Microprofit,6th Gaoxin South Road, High-Tech
Industrial Park, Nanshan, henzhen.
henzhen guangdong 51867
DN
42-05-F5 (hex) Integrated Technology (Malaysia) Sdn. Bhd.
4205F5 (base 16) Integrated Technology (Malaysia) Sdn. Bhd.
Phase 1, Bayan Aepas FIZ
Bayan Lepas Penang 11923
NY
while((line=reader.readLine())!=null){
String[]parts=line.split(“\\((十六进制)\\)”,3);
如果(零件长度>=2){
字符串键=零件[0]。修剪();
字符串值=零件[1]。修剪();
System.out.println(“键值对为:“+Key+”“+value”);
map.put(键、值);
}否则{
System.out.println(“忽略行:+行”);
}
}
请编辑您的问题,并发布实际问题的最低表示形式。至少给出您对输入结果的预期(不清楚您想要什么)。基本上,我想阅读D0-AB-DB
和Ahenhen ViewAt Technology Co。,第一行的和第二行的42-05-F5
和集成技术(马来西亚)有限公司