我正在尝试读出文件。
该文件具有特定对象的多个属性,这些属性现在不相关。
但是这些属性用“ +”号分隔。
现在,当我尝试读出它们并为+使用定界符时,出现错误:Dangling meta character '+' near index 0
注意:文件以“ 1”(数据库中对象的ID)开头,而不以“ +”开头
这是我一直在使用的代码:
public void doImport() throws FileNotFoundException, IOException{
file = new File(document);
Scanner fileIn = new Scanner(file);
while(fileIn.hasNextLine()){
//reading a single line of the file
String line = fileIn.nextLine();
Scanner scan = new Scanner(line);
//setting the delimiter
scan.useDelimiter("+");
while(scan.hasNext()){
//printing contents, split by a +
System.out.println(scan.next());
}
String string = fileIn.nextLine();
System.out.println(string);
}
fileIn.close();
}
文件内容:
最佳答案
Delimiter需要使用正则表达式模式,因此在这种情况下,您应该使用:scan.useDelimiter("\\+");
正则表达式中的+号表示您想要1个或多个匹配项,例如[a-z]+
表示从a到z的一个或多个字母。
关于java - Java-扫描仪分隔符-'在索引0附近悬挂元字符'+',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34008067/