我正在使用公理从 XML 中提取数据。
但是由于在 XML 中有 CTRL-CHAR(例如:â、€、¢、“、”、™、'、- 等),我遇到了错误。
任何机构都可以帮我替换所有 CTRL-SHAR 以避免上述错误。
问问题
4923 次
1 回答
0
目前我在这种情况下使用以下方法。但我认为一定有比这更好的方法。
public static String removeNonUtf8CompliantCharacters( final String inString ) {
if (null == inString ) return null;
byte[] byteArr = inString.getBytes();
for ( int i=0; i < byteArr.length; i++ ) {
byte ch= byteArr[i];
// remove any characters outside the valid UTF-8 range as well as all control characters
if ( !(ch < 0x00FD && ch > 0x001F) || ch =='&' || ch=='#') {
byteArr[i]=' ';
}
}
return new String( byteArr );
}
于 2014-04-23T09:05:23.413 回答