【问题标题】:Java parse a xml with file dropJava 解析带有文件删除的 xml
【发布时间】:2016-07-29 12:01:37
【问题描述】:

已经在我的代码中实现了 filedrop,我需要解析我放在 main() 中的 xml 文件。

Main()

case "XML":
  text.append("Processing file type XML: "+files[i].getCanonicalPath() + "\n" );
  ReadXml read_xml = new ReadXml();
  read_xml.read(files[i].getCanonicalPath(), text);
  break;

ReadXml.java

public class ReadXml {

    ProgramDocument programDocument = new ProgramDocument();
    public void read(String FILE, javax.swing.JTextArea text ) {

    try {
        JAXBContext context = JAXBContext.newInstance(ProgramDocument.class);
        Unmarshaller u = context.createUnmarshaller();

        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        dbf.setNamespaceAware(true);
        DocumentBuilder db = dbf.newDocumentBuilder();
        Document doc = db.parse(FILE);
        Object o = u.unmarshal( doc );
        doc.getDocumentElement().normalize();
        text.append("Account : " +doc.getElementsByTagName("Account").item(0));

    }
    catch(Exception e) {
        text.append("XML file not parsed correctly.\n");
        }
    }
}

我无法打印任何内容,当我打印时,我看到“NULL”或只是空行或一些路径@数字

我不是开发人员,我只需要尝试打开一个 xml 并将内容发送到数据库,但这已经太远了。

编辑:添加部分xml

<?xml version="1.0" encoding="UTF-8"?>
<ARRCD Version="48885" Release="38">
<Identification v="ORCOZIO"/>
<Version v="013"/>
<Account v="OCTO">
<Type v="MAJO"/>
<Date v="2016-05-14"/>
</AARCD>

【问题讨论】:

    标签: java xml unmarshalling


    【解决方案1】:

    元素“帐户”中没有标记为“帐户”的元素。 您要在此处阅读的是帐户的属性,而不是其他元素。 因此,如果你想读取属性 v,你应该使用 eElement.getAttribute("v"),而不是 getElementsByTagName()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-10
      • 1970-01-01
      • 2015-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多