XML 和 Android:只允许一个根元素?

发布于 2024-11-17 10:13:31 字数 1640 浏览 0 评论 0原文

我也遇到了和很多人类似的问题,但我无法解决。我正在使用 Android 应用程序创建一个 xml 文档,但无法读取它:我收到错误“仅允许一个根元素”

这是我的 XML,我真的不明白为什么它不起作用,因为我认为我尊重 W3C 规则。

我只是没有用应用程序填写所有文档。

<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<client>
  <civilite1>Monsieur</civilite1>
  <nom1>Nom</nom1>
  <prenom1>Prénom</prenom1>
  <adresseactuelle1></adresseactuelle1>
  <codepostal1></codepostal1>
  <ville1></ville1>
  <telprof1></telprof1>
  <telport1></telport1>
  <email2></email2>
  <civilite2>Monsieur</civilite2>
  <nom2>Nom</nom2>
  <prenom2>Prénom</prenom2>
  <adresseactuelle2></adresseactuelle2>
  <codepostal2></codepostal2>
  <ville2></ville2>
  <telprof2></telprof2>
  <telport2></telport2>
  <email2></email2>
  <adresseconstruction></adresseconstruction>
  <codepostalconstruction></codepostalconstruction>
  <villeconstruction></villeconstruction>
  <notes></notes>
</client>

这是我打开文件的 Java 代码:

    try {
        fichier = new File(path+nomDuFichier);
        factory = DocumentBuilderFactory.newInstance();
        builder = factory.newDocumentBuilder();
        document = builder.parse(fichier);
        document.getDocumentElement().normalize();
        NodeList liste = document.getElementsByTagName("client");
    } catch (Exception e) {
        Log.e("Erreur : ", e.getMessage());
    }

I'm having a problem similar to a lot of people, but I can't get it. I'm creating an xml document with my Android application but I can't read it : I get the error "Only one root element is allowed".

Here is my XML and I really don't understand why it doesn't work because I thought I was respecting the W3C rules.

I just didn't fill all the document with the app.

<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<client>
  <civilite1>Monsieur</civilite1>
  <nom1>Nom</nom1>
  <prenom1>Prénom</prenom1>
  <adresseactuelle1></adresseactuelle1>
  <codepostal1></codepostal1>
  <ville1></ville1>
  <telprof1></telprof1>
  <telport1></telport1>
  <email2></email2>
  <civilite2>Monsieur</civilite2>
  <nom2>Nom</nom2>
  <prenom2>Prénom</prenom2>
  <adresseactuelle2></adresseactuelle2>
  <codepostal2></codepostal2>
  <ville2></ville2>
  <telprof2></telprof2>
  <telport2></telport2>
  <email2></email2>
  <adresseconstruction></adresseconstruction>
  <codepostalconstruction></codepostalconstruction>
  <villeconstruction></villeconstruction>
  <notes></notes>
</client>

Here is my Java code to open the file :

    try {
        fichier = new File(path+nomDuFichier);
        factory = DocumentBuilderFactory.newInstance();
        builder = factory.newDocumentBuilder();
        document = builder.parse(fichier);
        document.getDocumentElement().normalize();
        NodeList liste = document.getElementsByTagName("client");
    } catch (Exception e) {
        Log.e("Erreur : ", e.getMessage());
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

猥琐帝 2024-11-24 10:13:31

由于某种原因,这是有效的:

 Document doc = documentBuilder.parse(fichier.toURI().toString());

我认为接收文件的解析方法可能有错误。

For some reason this works:

 Document doc = documentBuilder.parse(fichier.toURI().toString());

I think the parse method that receives a file might have a bug in it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文