为什么java / android需要在XML元素的开头有一个空格来解析它?

发布于 2024-10-24 05:21:00 字数 530 浏览 1 评论 0原文

我正在为我正在编写的 Android 应用程序解析 XML 文件,并注意到如果没有前导空格,第一个字符将被替换为空格。

  public void characters(char ch[], int start, int length) { //extends DefaultHandler
if(this.in_mytag || this.in_user_id){
  myXMLParser.setExtractedString(new StringBuffer().append(ch).toString());
}
  }

我想在 XML 中使用以下格式...

<user_id>123</user_id> 

返回的字符串是“23”(字符串中丢失了 1 和空格)。 如果我使用

; 123

结果是预期的“123”。我在这里缺少什么?或者这是典型的情况,我需要更改我的 XML 文件。

I am parsing an XML file for an Android app I am writing and have noticed that without a leading space the first char is replaced with a blank space.

  public void characters(char ch[], int start, int length) { //extends DefaultHandler
if(this.in_mytag || this.in_user_id){
  myXMLParser.setExtractedString(new StringBuffer().append(ch).toString());
}
  }

I am wanting to use the following format in my XML...

<user_id>123</user_id> 

The string that is returned is " 23" (with the 1 lost and an empty space in the string).
If I use

<user_id> 123</user_id>

the result is the expected " 123". What am I missing here? Or is this typical and I will need to alter my XML file.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

凉城已无爱 2024-10-31 05:21:00

我见过的所有 SAX characters() 方法实现都观察到了偏移量和长度参数。

这个版本有什么区别吗?

myXMLParser.setExtractedString(new String(ch, start, length));

All the SAX characters() method implementations I've seen have observed the offset and length parameters.

Does this version make any difference?

myXMLParser.setExtractedString(new String(ch, start, length));
我只土不豪 2024-10-31 05:21:00

我不确定这是否是原因,但我注意到您在 xml 中遗漏了结束标识符。 123 应为 123

I'm not sure if this is the reason why, but i noticed you left out the closing identifier in your xml. <user_id>123<user_id> should be <user_id>123</user_id>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文