<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document> <Placemark> <Name>Test Name</Name> <Description><b>Project Information</b><br><ul><li>Project Name: Test Name</li><li>Project Number: Test Number</li><li>Project Location: Test Location</li><li>System: Test System</li></ul><br><b>Project Team</b><br><br><ul><li>Regional Manager: Mem 1</li><li>Project Manager: Mem 2</li></ul><br>YouTube Video URL: <a href="http://youtu.be/U9EYP9GIe2k"><br>Picassa Album URL: <a href="www.picassa.com"><br></Description> <Point> <Coordinates>30,-125</Coordinates>,0 </Point> </Placemark> </Document> </kml>这就是我的自定义Excel宏正在生成的内容(我对编程很陌生,所以如果您注意到一些重要的东西,请放心)。当我试图用Google打开KML文件时,我得到以下消息:打开文件“文件路径”失败:在第2行的解析错误,第454列:不匹配标记。这与/Description标签有关..。这个标签怎么了?我和它对应的描述标签相匹配。
发布于 2012-11-29 16:54:41
您可以应用一些技术来调试和修复损坏的KML文件。
基本上,验证KML文件的最快方法是首先使用web浏览器。KML是一个XML文件,所以首先您可以测试它是否是一个格式良好的XML文件,这是它成为一个有效的KML文件的先决条件。只需重命名KML文件,添加一个.xml文件扩展名,然后将该文件拖到web浏览器(火狐、Chrome等)上。来验证它。参见这里的详细示例。
一旦发现并修复了这些错误,您就可以尝试一个KML验证器,该验证器可以检查该文件相对于OGC规范和相关的XML (例如独立命令行XmlValidator工具)是否有效。
在您的示例中,如果您通过一个简单的XML解析器运行它,它将显示:元素类型"br“必须由列455处的匹配的结束标记"</br>”终止。
错误是<description>元素有HTML,但没有用CDATA块转义(CDATA是XML的一部分)。要解决这个问题,您需要像这样重新格式化您的KML:
<description>
<![CDATA[
<b>Project Information</b>
...
<br>
]]>
</description>此外,元素有错误的名称(描述和描述)。KML是区分大小写的。
有关调试KML文件的更多提示可以找到这里。
https://stackoverflow.com/questions/13630399
复制相似问题