我正在使用一个框架,它会不时地返回包含“空”字符的格式不正确的字符串。
例如,“foobar”表示为:[,f,o,o,b,a,r]
第一个字符不是空格(' '),因此System.out.printlin()将返回“foobar”,而不是“ foobar”。然而,该字符串的长度为7而不是6。显然,这使得大多数字符串方法(equals、split、substring等)无用。是否有一种方法可以从字符串中删除空字符?
我尝试像这样构建一个新的字符串:
StringBuilder sb = new StringBuilder();
for (final char character : malformedString.toCharArray()) {
if (Character.isDefined(character)) {
sb.append(character);
}
}
sb.toString();
很不幸,这并不起作用。以下代码也是如此:
StringBuilder sb = new StringBuilder();
for (final Character character : malformedString.toCharArray()) {
if (character != null) {
sb.append(character);
}
}
sb.toString();
我也无法像这样检查空字符:
if (character == ''){
//
}
显然,这个字符串有问题...但我不能改变我正在使用的框架,也不能等待他们修复它(如果是他们框架中的错误)。 我需要处理这个字符串并对其进行清理。
你有什么想法吗?