2012-09-11 38 views
0

我正在學習Java String Tokenizer。我正在尋找找到段落結尾的方式。Java StringTokenizer如何找到段落的結尾?

例如,我有一個文本文件..

HI 
I am bob the the bob 

And I am am bob bob bob lu the the 

hello 

我讀txt文件,我使用的字符串標記把每個單詞hashtable中

不過,我想停止當段落結束時。 例如,

首先,我想存儲

"HI 
I am bob the the bob" 

其次,當我們看到雙換行符,我們停下來。並在散列表中插入「1」。 然後我想插入

"And I am am bob bob bob lu the the " 

第三,當我們再次看到了雙新行,那麼我們再次停止。 我們在哈希表

插入「2」,然後

我們插入「你好」到哈希表。

但是,我不確定在每個段落結束時停下來的方法嗎?

沒有人知道該怎麼做嗎?

+1

看來你有答案,當你有一個空行時停下來。 –

+0

這可能證明是有用的:http://stackoverflow.com/questions/4539878/strange-string-split-n-behavior – CasualT

+0

如何知道它何時停止?我們是否必須使用ascii代碼來檢查黑線? –

回答

0

我想你使用空格(「」)作爲分隔符。我會嘗試使用帶有「\ n」作爲分隔符的第二個Tokenizer,使用它解析文件,然後爲每個標記使用分隔符。

事實上的事情,第一次使用後的分詞中的標記每一個空行是款

0

的結尾處檢測雙新行不標記者的責任SRING。您正在使用標記器將一行分隔爲單獨的單詞。但我想你有一個讀取行的外部循環。當您檢測到空行時,段落結束。

while((line = reader.readLine()) != null) { 
    if ("".equals(line.trim())) { 
     // empty line - new paragraph. 
    } 
}