Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android-将自定义XML文件格式解析为字符串_Java_Android_Xml_Xml Parsing - Fatal编程技术网

Java Android-将自定义XML文件格式解析为字符串

Java Android-将自定义XML文件格式解析为字符串,java,android,xml,xml-parsing,Java,Android,Xml,Xml Parsing,我有一个自定义格式的xml文件,我试图将其存储在字符串中。我仍然是java的初学者,已经在论坛上搜索过了,但是所问的xml问题似乎已经与标准xml格式的xml格式相关 我必须使用的xml格式如下: <playList baseUrl= "Webaddress" <file name="xxxxxxx.xxx" showTime="YYYY-MM-DD HH:MM" /> <file name="xxxxxxx.xxx" showTime="YYYY-MM-DD HH:MM

我有一个自定义格式的xml文件,我试图将其存储在字符串中。我仍然是java的初学者,已经在论坛上搜索过了,但是所问的xml问题似乎已经与标准xml格式的xml格式相关

我必须使用的xml格式如下:

<playList baseUrl= "Webaddress"
<file name="xxxxxxx.xxx" showTime="YYYY-MM-DD HH:MM" />
<file name="xxxxxxx.xxx" showTime="YYYY-MM-DD HH:MM" />
.......
</playList>

如果我理解得很好,您希望获得以下输出:

xxxxxxx.xx1

doc.getElementsByTagName("file").item(1).getAttributes().item(0).getTextContent();
doc.getElementsByTagName("file").item(1).getAttributes().item(0).getTextContent();
YYYY-MM-DD HH:MM

doc.getElementsByTagName("file").item(0).getAttributes().item(1).getTextContent();
doc.getElementsByTagName("file").item(1).getAttributes().item(1).getTextContent();
等等

我通过使用NamedNodeMap完成了以下操作:

获取第一行的属性:

xxxxxxx.xx1

doc.getElementsByTagName("file").item(1).getAttributes().item(0).getTextContent();
doc.getElementsByTagName("file").item(1).getAttributes().item(0).getTextContent();
YYYY-MM-DD HH:MM

doc.getElementsByTagName("file").item(0).getAttributes().item(1).getTextContent();
doc.getElementsByTagName("file").item(1).getAttributes().item(1).getTextContent();
第二行:

xxxxxxx.xx2

YYYY-MM-DD HH:MM

doc.getElementsByTagName("file").item(0).getAttributes().item(1).getTextContent();
doc.getElementsByTagName("file").item(1).getAttributes().item(1).getTextContent();
如果只想在引号之间添加文本,只需添加.getTextContent()。 如果没有,您将获得以下输出->name=“xxxxxxx.xx2”。
然后可以将这些值设置为HashMap

您还应该查看xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<playList baseUrl= "Webaddress">
<file name="xxxxxxx.xx1" showTime="YYYY-MM-DD HH:MM" />
<file name="xxxxxxx.xx2" showTime="YYYY-MM-DD HH:MM" />
</playList>

为我工作


希望能有所帮助;)

什么是
钥匙项目
钥匙说明
钥匙名称
?你能发布这些定义吗?已经更新了这些定义。但是,我相信我的问题在于getElementsByTagName。我找不到另一个可以在名称或showtime上分隔的命令。@Simon:感谢您发布您当前拥有的代码。这段代码做什么?它会抛出错误吗?它是否返回错误的结果?结果不正确的证据是什么(您期望的结果是什么)?