在Java中从xml文件创建html表头

发布于 2024-11-08 02:07:31 字数 747 浏览 1 评论 0原文

我需要一些关于我正在尝试解决的问题的说明:

我想从 xml 文件创建一个 html 表,我想 根据xml中的元素创建表头 文件如下:

<xml>
  <fields>
    <field>
      <name>A</name>
    </field>
    <merge label="D">
      <field>
        <name>B</name>
      </field>
      <field>
        <name>C</name>
      </field>
    </merge>
  </fields>
</xml>

应该生成这样的表头:

/========================\    \
|           |     D      |     |
|     A     |------------|     |- table header
|           |   B  |  C  |     |
|========================|    /
|   .....   |  ..  | ... |
\========================/  

对于如何使用 Java 执行此操作有什么想法吗?

I need some light here on this problem I'm trying to solve:

I want to create an html table from a xml file and I'd like
to create a table header according to the elements in the xml
file as follows:

<xml>
  <fields>
    <field>
      <name>A</name>
    </field>
    <merge label="D">
      <field>
        <name>B</name>
      </field>
      <field>
        <name>C</name>
      </field>
    </merge>
  </fields>
</xml>

Should generate a table header like this:

/========================\    \
|           |     D      |     |
|     A     |------------|     |- table header
|           |   B  |  C  |     |
|========================|    /
|   .....   |  ..  | ... |
\========================/  

Any ideas in how to do this using Java?

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

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

发布评论

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

评论(2

猥琐帝 2024-11-15 02:07:31

像这样的事情将让您从简单的情况开始(没有“合并”标签)。

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:fn="http://www.w3.org/2005/xpath-functions">
<xsl:template match="/fields">
     <html xmlns="http://www.w3.org/1999/xhtml">
      <body>
        <h1>Doc Header</h1>
            <xsl:for-each select="/fields/field">
                <table border="1">
                    <tr>
                       <th><xsl:value-of select="name"/></th>
                    </tr>
                </table>
            </xsl:for-each>
      </body>
    </html>
</xsl:template>

Something like this will get you started with the simple case (without the 'merge' tag).

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:fn="http://www.w3.org/2005/xpath-functions">
<xsl:template match="/fields">
     <html xmlns="http://www.w3.org/1999/xhtml">
      <body>
        <h1>Doc Header</h1>
            <xsl:for-each select="/fields/field">
                <table border="1">
                    <tr>
                       <th><xsl:value-of select="name"/></th>
                    </tr>
                </table>
            </xsl:for-each>
      </body>
    </html>
</xsl:template>
灼疼热情 2024-11-15 02:07:31

我将使用 XSLT 文件并将其与 Xalan撒克逊Jaxp

I'd use an XSLT file and apply it with Xalan, Saxon or Jaxp

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