我在爲Android編寫網絡應用程序。根據協議規範,每行的結尾必須是CR/LF組合。雖然我用自己的字符串生成這個沒有問題,但有時我必須處理用戶輸入並轉換行結束。高效地更改字符串中的EOL字符
只要它通過電線作爲CR/LF發送,無論我將EOL存儲爲內部地址,如果最簡單的方法是在它進入網絡時進行更改,那沒問題。
什麼是簡單而有效的方式來確保我的所有網絡輸出都以CR/LF結尾,而不管我的字符串在內存中是什麼?
我在爲Android編寫網絡應用程序。根據協議規範,每行的結尾必須是CR/LF組合。雖然我用自己的字符串生成這個沒有問題,但有時我必須處理用戶輸入並轉換行結束。高效地更改字符串中的EOL字符
只要它通過電線作爲CR/LF發送,無論我將EOL存儲爲內部地址,如果最簡單的方法是在它進入網絡時進行更改,那沒問題。
什麼是簡單而有效的方式來確保我的所有網絡輸出都以CR/LF結尾,而不管我的字符串在內存中是什麼?
什麼是確保我的輸出具有特定EOL字符的有效方法?
通常情況下,當你閱讀的文本行,它不包括你想要的,而不是使用像println
當你寫的線條,寫了EOL字符(S)
如果你有內存中的字符串包含未知的EOL字符,你可以使用
s = s.replaceAll("(\r\n|\r|\n)", "\r\n");
對於像我這樣的人,不知道交替(|)是否保證被排序的情況 - 它是:[「Pattern引擎執行傳統的基於NFA的匹配,有序交替,就像在Perl 5中發生的一樣。」](http ://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html) –
根據應用程序的不同,您可能還想添加反向命令'\ n \ r'來覆蓋_all_案例。但一定要把它放在開始而不是結束,例如'.replaceAll(「(\ n \ r | \ r \ n | \ r | \ n)」,「\ r \ n」)' –
@ChadNB你知道哪個平臺顛倒了'\ n \ r'嗎? –
什麼是這裏的問題? – RNJ
編輯說明問題 - 確保我的輸出具有特定EOL字符的有效方法是什麼? –