Bla*_*man -3 java xml sax xerces
我在以下事件中设置xml元素内的字符:
public void characters(char[] ch, int start, int length) {
elementText = new String(ch, start, length);
}
Run Code Online (Sandbox Code Playgroud)
其中elementText是一个String.
<client-key>#<ABC::DEF::GHI:0x102548f78></client-key>
Run Code Online (Sandbox Code Playgroud)
我将此xml数据加载到java对象中,我的objects属性具有以下值:
'\n '
Run Code Online (Sandbox Code Playgroud)
现在,如果我更改<client-key>上面元素中的文本,它在我的对象属性中就可以了.
我需要以某种方式处理某些编码问题吗?
public void endElement(String uri, String localName, String qName) {
if (qName.equals("client-key")) {
client.setClientKey(elementText);
}
}
Run Code Online (Sandbox Code Playgroud)
Old*_*eon 11
这可能是你的xml整理后会得到的结果:
<client-key>
#<ABC::DEF::GHI:0x102548f78>
</client-key>
Run Code Online (Sandbox Code Playgroud)
字符
...
解析器将调用此方法来报告每个字符数据块.SAX解析器可以在一个块中返回所有连续的字符数据,或者它们可以将它分成几个块 ; ...
你最好使用类似的东西:
public void characters(char[] ch, int start, int length) {
// Note the +=
elementText += new String(ch, start, length);
}
public void endElement(String uri, String localName, String qName) {
if (qName.equals("client-key")) {
client.setClientKey(elementText);
}
elementText = "";
}
Run Code Online (Sandbox Code Playgroud)