gpt4 book ai didi

java - 解析 KML 文件时 VTD-XML 产生 "XML not terminated properly"错误

转载 作者:行者123 更新时间:2023-12-01 05:50:23 24 4
gpt4 key购买 nike

我从学校的类车跟踪服务器获取包含类车路线和位置的 KML 文件。我想在 Android 应用程序中解析此 KML,但当我将文件传递到 VTD-XML 2.9 解析器时,它失败,告诉我 XML 未正确终止。我通过模式 validator 运行了该文件,尽管它不符合 KML 2.1 Schema (不喜欢文件夹元素),它的格式良好。

我认为该文档没有其他问题,但我也看不出我的代码哪里可能有问题:

byte[] doc = new byte[32000];
URL url = new URL("http://shuttles.rpi.edu/displays/netlink.kml");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream is = conn.getInputStream();
is.read(doc);

VTDGen vg = new VTDGen();
vg.setDoc(doc);
vg.parse(true);

最佳答案

情况可能是

is.read(doc); 

只能得到任意数量的字节,但绝对不是整个文档......您可以通过打印返回值来验证这一点

int k = is.read(doc)

读完整个文档后,应该使用setDoc(doc, 0, length),0是相对于doc的起始偏移量,length是xml文档的长度。

关于java - 解析 KML 文件时 VTD-XML 产生 "XML not terminated properly"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4854657/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com