編輯: 感謝dawww,問題與編碼,我改變它爲UFT-8,現在程序工作得很好。慢一點。文本搜索行號併發症
我非常需要幫助。
問題:
我有一個TreeSet文字我拿出一文,他們都是小寫,並按照此正則表達式( 「[^ A-ZA-Z]」),我需要什麼是將TreeSet逐字逐個比較,並將他們從中得到的文本進行比較,並獲取每個單詞出現的行號,並將它們存儲到ArrayList中並返回。
我有以下代碼:
public ArrayList<Integer> search(String word, String book) throws FileNotFoundException, IOException{
FileReader path = new FileReader(book);
LineNumberReader read = new LineNumberReader(path);
ArrayList<Integer> lines = new ArrayList<>();
String line;
for(line = read.readLine(); line != null; line = read.readLine()){
if(line.toLowerCase().contains(word)){
lines.add(read.getLineNumber());
}
}
return lines;
}
的想法是使用的搜索方法的爲一個值的Map返回>(每個字和線)
這樣的:
for(String s : words){
map.put(s, search(s , book));
}
單詞是我從文本中取出的字符串(劉易斯卡羅爾的仙境中的愛麗絲)的TreeSet。
該代碼不起作用,我不知道爲什麼。代碼編譯並運行,但映射爲空。
建議的編碼問題。 –