2016-11-29 53 views
-1

我在文件.txt中將「\ n」轉換爲「:」。而在這裏,這是轉換之前我段落:字符後面的字符是什麼?

enter image description here

你可以看到,字符串「安和」和字符串「Djam的」之間,它有一個字符「」和兩個字符「\ n」。這是我的轉換功能:

private String convertData(){ 
    String different = "~`[email protected]#$%^&*()-_=+*/\\\"'|]}{[:;?/.><,\n "; 
    StringBuilder data = new StringBuilder(tvData.getText().toString().trim()); 
    for (int j = 0; j < data.length(); j++){ 
     if(different.contains("" + data.charAt(j))) data.setCharAt(j, ':'); 
    } 
    String convertData = data.toString().trim(); 
    return convertData; 
} 

這是結果: enter image description here

您可以字符後面看到「\ n」個有性格,它是不是在字符串不同。
有誰能告訴我該怎麼辦?

回答

1

- 繼續像你正在做,但\n(和其他逃出序列)。

因此,使用

String different = "~`[email protected]#$%^&*()-_=+*/'|]}{[:;?/.><, "; 

- 循環後,使用string.replace()只更換子"\n"和其他序列,即:"\\""\""
您可以使用循環來替換序列,但您必須替換2個字符而不是1個。


基本上,在第一循環中,您替換所有單個字符
然後,您替換字符序列。

+0

我曾嘗試過它,但它不起作用 –

+0

它肯定有效。只需將FIRST替換爲單個字符即可。然後序列(一次一個或一個循環)。 –

+0

我的轉換函數: private String convertData(){ String different =「〜'!@#$%^&*()-_ = + */\\\」'|]} {[:;?/ (int j = 0; j

1

記事本僅支持Windows行尾(\r\n),因此必須是您的文件包含的內容。使用字面上不是記事本的程序將文件轉換爲Unix行尾(\n),或將\r添加到搜索模式。