gpt4 book ai didi

Java:根据用户定义的XSD编写XML

转载 作者:行者123 更新时间:2023-11-29 05:55:41 24 4
gpt4 key购买 nike

我正在编写一个工具来将 CSV 格式的数据转换为 XML。用户将指定解析方法,即:输出的 XSD,CSV 中的哪个字段进入结果 XML 的哪个字段。

(非常简化的用例)示例:

CSV

Ciccio;Pippo;Pappo
1;2;3

XSD

(more stuff...)
<xs:element name="onetwo">
<xs:element name="three">
<xs:element name="four">

用户给出规则

   Ciccio -> onetwo
Pippo -> three
Pappo -> four

我已经使用数据集在 C# 中实现了它,我如何在 Java 中实现它?我知道有 DOM、JAXB 等,但似乎 XSD 仅用于验证以其他方式创建的 XML。我错了吗?

编辑:一切都需要在运行时。我不知道我会收到什么样的 XSD,所以我不能实例化不存在的对象,也不能用数据填充它们。所以我猜 xjc 不是一个选项。

最佳答案

由于您的输出 XML 文件有 XSD,因此创建此 XML 的最佳方法是使用 Java Architecture for XML绑定(bind) (JAXB)。您可能需要引用:"Using JAXB"教程,让您大致了解如何使用它来满足您的要求。

基本思路如下:

  • 从 XML 模式生成 JAXB Java 类,即您拥有的 XSD
  • 使用模式派生的 JAXB 类在 Java 应用程序中解码和编码 XML 内容
  • 使用模式派生的 JAXB 类从头开始创建 Java 内容树
  • 将数据解码到输出 XML 文件。

Here's another tutorial您可能会发现有用的信息。

关于Java:根据用户定义的XSD编写XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12230019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com