我想解析这个XML文件:
要解析的XML文件:
<?xml version="1.0"?>
<Gist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../schema/Gist.xsd">
<Name>AbsoluteValue</Name>
<Description>Determines the absolute value.</Description>
<PertinentData />
<Scenarios>
<Scenario>
<ID>CALCULATED</ID>
<Description>The value was used in the absolute value function.</Description>
<Template>
<NodeName />
<Text> is </Text>
<NodeValue />
<Text> because it is the absolute value of </Text>
<InputNameAsLink>Value</InputNameAsLink>
<Text> (</Text>
<InputValueAsLink>Value</InputValueAsLink>
<Text>).</Text>
</Template>
</Scenario>
<Scenario>
<ID>INPUT_IS_BLANK</ID>
<Description>The value is blank.</Description>
<Template>
<NodeName />
<Text> is blank since </Text>
<InputNameAsLink>Value</InputNameAsLink>
<Text> (</Text>
<InputValueAsLink>Value</InputValueAsLink>
<Text>) is blank.</Text>
</Template>
</Scenario>
</Scenarios>
</Gist>
我想将要点名称和方案返回给我。因此,对于示例文件,我想要AbsoluteValue和场景列表(CALCULATED和INPUT_IS_BLANK)。如果我错了,请纠正我,但是要使用的数据结构是
Map<String, List<String>>
如何在Java代码中完成此操作?如果可能的话,我想使用XPATH。
我以为这是获取每个SCENARIO的正确XPATH表达式?
/*/Scenarios/Scenario/ID/*
感谢Marcin Krol,我找到了一个例子并得到了它:
static List<String> parseScenarioByGist() {
Map<String, List<String>> map = new LinkedHashMap<String, List<String>>();
String path = "/Users/haddad/development/industry/generalatomics/v1/gists_xml/AbsoluteValue.xml";
try {
Document doc = getDocument(path);
XPathFactory xpathFactory = XPathFactory.newInstance();
XPath xpath = xpathFactory.newXPath();
XPathExpression expr = xpath.compile("/*/Scenarios/Scenario/ID");
NodeList nList = (NodeList) expr.evaluate(doc, XPathConstants.NODESET);
Integer count = 1;
List<String> list = new ArrayList<String>();
for(int i=0;i<nList.getLength();i++) {
Node n = nList.item(i);
System.out.println("Node Name: "+n.getTextContent());
list.add(n.getNodeName());
count++;
}
return list;
}
catch (FileNotFoundException e) {
e.printStackTrace();
} catch (XPathExpressionException e) {
e.printStackTrace();
}
return null;
}
要清理它,但效果很好。
问题内容: 我正在尝试从这样的站点地图中提取URL:https : //www.bestbuy.com/sitemap_c_0.xml.gz 我已经解压缩并将.xml.gz文件另存为.xml文件。结构如下: 我正在尝试使用ElementTree提取整个文件中 loc 节点内的所有URL ,但仍在努力使其正常工作。 根据文档,我正在尝试这样的事情: 但是,没有任何东西可以载入价值。我的目标是提取lo
问题内容: 我实质上是试图浏览html文件的文件夹。我想将它们嵌入到二进制文件中,并能够根据请求解析它们以用于模板执行目的。(如果我的措词不正确,请原谅)。 任何想法,技巧,窍门或实现此目的的更好方法将不胜感激。 问题答案: 我使用大多数Go Web应用程序执行此操作。我使用go-bindata从要嵌入的所有文件中自动生成Go源代码,然后将其编译为二进制文件。所有这些都是在构建过程中自动完成的。
我试图从thymeleaf输入到我的java类中获取一个值。 来自thymeleaf的简单脚本 我如何能够将输入的文本检索到我的java类中? 控制器 我可以运行我的应用程序,并看到thymeleaf视图。当我在文本框中输入一些文本并点击提交时。我收到一个错误。 错误信息 我的应用程序是用Springboot、Java和Thymeleaf创建的。我做错了什么?ModelandView是否可能不能使
我正在打包一个Web应用程序存档(.war),以便通过在shell中启动它,方法是在主类中使用以下代码启动Jetty 9的嵌入式副本: 但是,当编译第一个包含JSTL taglib声明的JSP时,我遇到了这个错误: null 如果有任何想法或建议,我将不胜感激。此设置将取代旧的设置,旧的设置在Windows上成功地完成了相同的任务,但由于包含了带来此bug的旧依赖项,因此在Linux上无法运行。不
问题内容: 如何解析包含数据的XML 我们如何解析xml并获取包含在???中的数据? 问题答案: (http://www.java2s.com/Code/Java/XML/GetcharacterdataCDATAfromxmldocument.htm)
问题内容: 我想使用scala解析.mht文件,但是我发现我的代码与Java完全一样。 以下是文件样本: 有一个名为的特殊行,它是分隔符行: 第一部分是有关此文件的一些信息,可以忽略。以下是4个块,第一个是文件,其他是带有编码文本的图像。 如果我使用Java,则代码如下: 我尝试使用scala重写代码,但是我发现我的代码结构几乎相同,只是我使用了scala语法而不是Java。 是否有scala方法