相关疑难解决方法(0)

如何在具有默认命名空间的xml文档上使用XPath

我想操作具有默认命名空间但没有前缀的xml doc.有没有一种方法可以使用没有命名空间uri的xpath,就好像没有命名空间一样?
我相信如果我们将documentBuilderFactory的namespaceAware属性设置为false应该是可能的.但就我而言,它不起作用.
我的理解是不正确的还是我在代码中犯了一些错误?

这是我的代码:

    DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
    domFactory.setNamespaceAware(false);
    try {
        DocumentBuilder builder = domFactory.newDocumentBuilder();
        Document dDoc = builder.parse("E:/test.xml");

        XPath xPath = XPathFactory.newInstance().newXPath();
        NodeList nl = (NodeList) xPath.evaluate("//author", dDoc, XPathConstants.NODESET);
        System.out.println(nl.getLength());
    } catch (Exception e) {
        e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

这是我的xml:

<?xml version="1.0" encoding="UTF-8"?>
<root xmlns="http://www.mydomain.com/schema">
  <author>
    <book title="t1"/>
    <book title="t2"/>
  </author>
</root>
Run Code Online (Sandbox Code Playgroud)

java xml xpath

16
推荐指数
1
解决办法
3万
查看次数

如何从Java中将子元素从XML提取到字符串?

如果我有像这样的XML文档

<root>   
   <element1>
        <child attr1="blah">
           <child2>blahblah</child2>
        <child>   
   </element1> 
</root>
Run Code Online (Sandbox Code Playgroud)

我想获得带有第一个子元素的XML字符串.我的输出字符串是

<element1>
    <child attr1="blah">
       <child2>blahblah</child2>
    <child>
</element1>
Run Code Online (Sandbox Code Playgroud)

有很多方法,想看一些想法.我一直在尝试使用Java XML API,但目前尚不清楚是否有一种很好的方法可以做到这一点.

谢谢

java xml

7
推荐指数
2
解决办法
3万
查看次数

XStream或Simple

我需要决定使用哪一个.我的情况非常简单.我需要将一个简单的POJO/Bean转换为XML,然后再转换回来.没什么特别的.

我要找的一件事是它应该包括父属性.如果它可以在超类型上工作,那将是最好的,它可以只是一个标记界面.

如果有人可以将这两者与缺点和专业人士进行比较,那么哪一个缺少哪一个.我知道XStream也支持JSON,这是一个优点.但是,如果我们将JSON放在一边,Simple看起来就更简单了.在开发和社区方面,Simple的未来是什么?XStream非常受欢迎我相信,即使是"XStream"这个词,在SO上打了很多线程.

谢谢.

java xml xstream jaxb pojo

7
推荐指数
3
解决办法
6890
查看次数

用正则表达式替换 xml 标签值

我有这样的 xml,我想用其他东西替换胡萝卜标签值我使用这个表达式(<.[^(><.)]+>)但它不能正常工作我应该更改什么来管理获取值并用新值替换它?:

<Monkey xmlns="http://urlhere.com/monkeynamespace">
 <foodType>
  <vegtables>
   <carrots>1</carrots>
  </vegtables>
 <foodType>   
</Monkey>
Run Code Online (Sandbox Code Playgroud)

regex xml apache-nifi

0
推荐指数
1
解决办法
8221
查看次数

标签 统计

xml ×4

java ×3

apache-nifi ×1

jaxb ×1

pojo ×1

regex ×1

xpath ×1

xstream ×1