BufferedReader br = new BufferedReader(new FileReader(file));
String delimiter = "\\s\\d\\.\\s";
String cl;
while ((cl = br.readLine()) != null) {
String split[] = cl.split(" ", 2);
String name = split[0];
//System.out.println( name);
String description = split[1];
String s[] = description.split(delimiter);
}
br.close();
试图读入类似内容并由上面的分隔符分隔
( .WKS 1. Lotus Worksheet(文件扩展名)。 2. Microsoft Works文档(文件扩展名)。 )
但是,我得到了一个空白空间,它没有在Arr [1]中放任何东西,而只是在array [0]中放了东西。
我的最终目标是将它们以.WKS作为密钥存储,并通过链接将其余的存储到该密钥下的哈希表中。
答案 0 :(得分:0)
通过将定界符更改为"\\d\\.\\s"
,此代码:
String delimiter = "\\d\\.\\s";
String cl = ".WKS 1. Lotus Worksheet (filename extension). 2. Microsoft Works document (filename extension).";
String split[] = cl.split(" ", 2);
String name = split[0];
String description = split[1];
String splitted[] = description.split(delimiter);
System.out.println("name=" + name);
System.out.println("description" + description);
for (String s : splitted) {
System.out.println(s);
}
打印
name=.WKS
description=1. Lotus Worksheet (filename extension). 2. Microsoft Works document (filename extension)).
Lotus Worksheet (filename extension).
Microsoft Works document (filename extension).
请注意空行,这意味着splitted[0]
为空。
这就是你想要的吗?