在xml中使用embed标签

1 xml

我对xml非常新.我正在开发一个使用xml文件的应用程序.我在Google的帮助下创建了这个文件.我的示例xml文件是:

<?xml version="1.0"?>
<gamelist>
 <game>
  <title>Driver</title>
  <code><EMBED src="http://www.pnflashgames.com/modules/pnFlashGames/games/racer.swf"></EMBED></code>
  <rating>4</rating>
 </game>
 <game>
  <title>ConeCrazy</title>
  <code><EMBED     src="http://www.pnflashgames.com/modules/pnFlashGames/games/ConeCrazy.swf"></EMBED></code>
  <rating>3</rating>
 </game>
</gamelist>
Run Code Online (Sandbox Code Playgroud)

在上面的文件中,代码元素具有嵌入标记.对于我的应用程序,我需要将标签嵌入为字符串.在代码元素中,如果我使用任何字符串而不是嵌入标记,我可以读取该字符串.如果我使用embed标签,我会收到如下错误:

[致命错误] gamelist.xml:5:103:对实体"pn_uname"的引用必须以";"结尾 除界.

我正在使用Java来读取xml文件.在我的Java类中,我希望将整个embed标记作为字符串.

Tom*_*lak 5

我想你不是使用合适的工具(DOM API)生成XML,而是通过连接字符串.

如果进一步假设您在问题中显示的XML不是触发错误的XML.

我想你有这样的事情:

<EMBED src="http://foo/bar/racer.swf?bla&pn_uname=baz"></EMBED>
Run Code Online (Sandbox Code Playgroud)

这将触发一条错误消息,指出字符实体"pn_uname"格式不正确.

表达上述内容的正确方法是:

<EMBED src="http://foo/bar/racer.swf?bla&amp;pn_uname=baz"></EMBED>
Run Code Online (Sandbox Code Playgroud)

...使用API​​生成XML的内容将自动为您处理.避免字符串连接以生成XML.