2013-04-11 15 views
2

我需要從字符串生成器中讀取一行。 問題是,當我執行.toString()...它將成爲一個單一的字符串,我不知道如何從它得到一條線。 我讀過類似地雷問題,並得到這樣的回答:Android String Builder每行讀取


StringBuilder sb = new StringBuilder(); 
sb.append("line 1"); 
sb.append("\\n"); 
sb.append("line 2"); 

String[] lines = sb.toString().split("\\n"); 
for(String s: lines){ 
    System.out.println("Content = " + s); 
    System.out.println("Length = " + s.length()); 
} 

的問題是,如果「線路1」或「2號線」,其實就是一個密碼,其中可能包含任何可能的字符串組合,包括裏面的「\\ n」? 請幫忙。

+1

你想怎樣通過連接在StringBuilder的字符串來解決,然後分裂他們嗎? 無論如何,有2個參數的split()函數,它允許您將字符串拆分成固定數量的字符串。這將保護你免受第二個字符串中的新行。 – infthi 2013-04-11 16:17:21

+1

你是否需要使用StringBuilder?例如,如果您使用ArrayList ,那麼您構成的問題會更容易。 – Yojimbo 2013-04-11 16:21:57

+0

其實這並不是說我是連接字符串,然後,沒有理由再次分裂他們......實際上,我工作了,需要我從文件中讀取加密程序...當它寫到文件加密郵件時,它必須被連接起來...當我回讀時,我必須找到一種方法來分裂他們...這是我的主要問題... – falcon 2013-04-11 16:25:32

回答

0

我建議你使用一個「讀者」之類的FileReader,閱讀器,掃描儀,而不是「製造商/作家」。

看看here,一些教程和良好爲例進行讀取和寫入文件。