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文件的编码不工作