Xml StringBuilder附加了换行符\";烧焦
我在xml解析器DefaultHandler2中使用StringBuilder。 生成器是StringBuilderXml StringBuilder附加了换行符\";烧焦,xml,newline,stringbuilder,Xml,Newline,Stringbuilder,我在xml解析器DefaultHandler2中使用StringBuilder。 生成器是StringBuilder @Override public void characters(char[] ch, int start, int length) throws SAXException { super.characters(ch, start, length); builder.append(ch, start, length); } @Override p
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
super.characters(ch, start, length);
builder.append(ch, start, length);
}
@Override
public void endElement(String uri, String localName, String qName){
strVar = builder.toString();
}
现在的问题是StringBuilder
追加了“\n”新行字符?
也可能是builder.setLength(0)
正在添加换行符
如果我想接受这一新行,就不可能从字符串中删除新行字符<代码>strVar.removeAll(\\n,“”)在所有可能的变体中都不起作用
有什么想法吗
谢谢
当做
ChristianStringBuilder没有附加任何'\n'字符(除非您告诉它)
“\n”字符源自其他地方。StringBuilder没有附加任何“\n”字符(除非您告诉它)
“\n”字符源自其他地方。换行符很可能是
ch
数组的一部分<代码>StringBuilder只附加您告诉它的内容,不会自动附加换行符
至于strVar.removeAll(“\n”,”)
不删除换行符,请不要忘记使用调用的结果:
strVar = strVar.removeAll("\n", "")
Java中的字符串是不可变的,因此仅调用
removeAll()
不会修改原始字符串对象。最有可能的是换行符是ch
数组的一部分<代码>StringBuilder只附加您告诉它的内容,不会自动附加换行符
至于strVar.removeAll(“\n”,”)
不删除换行符,请不要忘记使用调用的结果:
strVar = strVar.removeAll("\n", "")
Java中的字符串是不可变的,因此只需调用
removeAll()
不会修改原始字符串对象。感谢您提供的不可变字符串-我认为它很有用。我正在深入研究“字符”。谢谢你提供的不可变字符串-我认为它很有用。我正在深入研究“人物”。。