0
由於某些原因,在某些情況下使用string.split時會出現問題。它必須與文件的編碼有關。但是,我確信在Eclipse下的Encoding中,在所有情況下都會使用「Default MacRoman」 - 這是所有代碼文件中默認使用的。拆分和索引使用不同字符串編碼的問題
然而,當我從我的java文件拷貝一個字符串包含此字符串另一個問題:
"Test String" - while typing this string again "Test String"
是有區別的。在第一個「」空間編碼爲160,而在第二個是32。
因此,當使用拆分我必須確保使用正確編碼的「」。
這就是我現在的做法 - 我覺得不是很優雅。
凡longText
包含的文本被分割
char splitChar;
if (longText.indexOf((char) 32) > 0) {
splitChar = (char) 32;
} else
splitChar = (char) 160;
String splitCharString = String.format("%c", splitChar);
String[] tokens = longText.split(splitCharString);
有沒有更好的方式來做到這一點?
PS只是明確地改變在Eclipse爲macroman文件的編碼不工作