在 Java 中创建 HTML 表

HTML 表格在网页上以网格格式显示数据。表格以行和列的形式组织表格数据,其中每个单元格可以包含文本、图像、链接或其他 HTML 元素。在这篇博文中,我们将学习如何用 Java 创建 HTML 表。

本文涵盖以下主题:

  1. 用于创建 HTML 表格的 Java API
  2. 创建 HTML 表格
  3. 创建具有样式属性的 HTML 表格
  4. 具有 rowspan 和 colspan 的 HTML 表格
  5. 在线 HTML 表格生成器
  6. 免费学习资源

用于创建 HTML 表的 Java API

我们将使用 Aspose.HTML for Java 以编程方式创建 HTML 表格。它使开发人员能够在 Java 应用程序中使用 HTML 文档。它允许 HTML 解析、渲染、编辑以及将 HTML 文档转换为其他支持的格式

下载 API 的 JAR 或在基于 Maven 的 Java 应用程序中添加以下 pom.xml 配置。

 <repositories>
     <repository>
         <id>snapshots</id>
         <name>repo</name>
         <url>http://repository.aspose.com/repo/</url>
     </repository>
</repositories>
 <dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-html</artifactId>
        <version>23.11</version>
        <classifier>jdk17</classifier>
    </dependency>
</dependencies>

在 Java 中创建 HTML 表

HTML 表是使用<table> 元素,并且使用各种其他元素进一步指定其结构,例如 <tr> 对于行,<th> 用于标题单元格,以及 <td> 用于数据单元格。

我们可以按照以下步骤轻松创建 HTML 表格:

  1. 创建 HTMLDocument 类的实例。
  2. (可选)创建一个样式元素并将其附加到 head 元素。
  3. 创建<table> ,<tbody> ,<tr> ,<th> 、和<td> 使用 createElement() 方法的元素。
  4. 使用appendChild() 方法将子元素追加到其父元素。
  5. 之后,附加<table> 元素到 <body> 元素。
  6. 最后,调用 save() 方法将文档保存在给定的文件路径中。

以下代码示例展示了如何在 Java 中创建 HTML 表。

// 准备编辑文件保存路径 
String savePath = "C:\\Files\\Table.html";

// 初始化一个空的 HTML 文档
HTMLDocument document = new HTMLDocument();

// 创建样式元素并为表格元素分配颜色 border-style 和 border-color 值
Element style = document.createElement("style");
style.setTextContent("table, th, td { border: 1px solid #0000ff; }");

// 找到文档头元素并将样式元素附加到头部
Element head = document.getElementsByTagName("head").get_Item(0);
head.appendChild(style);

// 声明一个引用的变量体<body>元素
Element body = document.getBody();

// 指定列和行
int cols = 3;
int rows = 2;
boolean isFirstRowHeader = false;

// 创建表格元素
Element table = document.createElement("table");

// 创建表体
Element tbody = document.createElement("tbody");
table.appendChild(tbody);

// 创建表格标题行 
if (isFirstRowHeader)
{
    Element tr = document.createElement("tr");
    tbody.appendChild(tr);

    // 创建表标题列 
   for (int j = 1; j < cols + 1; j++)
    {
        Element th = document.createElement("th");
        Text title = document.createTextNode("Column-" + j);
        th.appendChild(title);
        tr.appendChild(th);
    }

   for (int i = 0; i < rows - 1; i++)
    {
        // 创建表行 
        Element dataTr = document.createElement("tr");
        tbody.appendChild(dataTr);

        // 创建表格标题单元格
       for (int j = 1; j < cols + 1; j++)
        {
            Element td = document.createElement("td");
            Text title = document.createTextNode("Data-" + j);
            td.appendChild(title);
            dataTr.appendChild(td);
        }
    }
} 
else
{
   for (int i = 0; i < rows; i++)
    {
        // 创建表行 
        Element dataTr = document.createElement("tr");
        tbody.appendChild(dataTr);

        // 创建表格单元格
       for (int j = 1; j < cols + 1; j++)
        {
            Element td = document.createElement("td");
            Text title = document.createTextNode("Data-" + j);
            td.appendChild(title);
            dataTr.appendChild(td);
        }
    }
}

// 将表格附加到正文
body.appendChild(table);

// 将文档保存到文件
document.save(savePath);
在 Java 中创建 HTML 表

在 Java 中创建 HTML 表

在 Java 中创建带有样式属性的 HTML 表

以下代码示例演示如何在 Java 中创建具有样式属性的 HTML 表。

// 准备编辑文件保存路径 
String savePath = "C:\\Files\\TableWithStyle.html";

// 初始化一个空的 HTML 文档
HTMLDocument document = new HTMLDocument();

// 创建样式元素并为表格元素分配颜色 border-style 和 border-color 值
Element style = document.createElement("style");
style.setTextContent("table, th, td { border: 1px solid #0000ff; border-collapse: collapse;}");

// 找到文档头元素并将样式元素附加到头部
Element head = document.getElementsByTagName("head").get_Item(0);
head.appendChild(style);

// 声明一个引用的变量体<body>元素
Element body = document.getBody();

// 创建表格元素
Element table = document.createElement("table");
table.setAttribute("style", "background-color:#00FF00;");

// 创建表体
Element tbody = document.createElement("tbody");
table.appendChild(tbody);

// 创建表标题行 
Element tr = document.createElement("tr");
tbody.appendChild(tr);

// 使用所选元素的属性设置样式属性               
tr.setAttribute("style", "border: 2px Black solid; background-color:Red; color:#FFFFFF");

// 创建表头单元格 1
Element th = document.createElement("th");
Text title = document.createTextNode("Name");
th.appendChild(title);
tr.appendChild(th);

// 创建表头单元格 2
th = document.createElement("th");
title = document.createTextNode("Email");
th.appendChild(title);
tr.appendChild(th);

// 创建表头单元格 3
th = document.createElement("th");
title = document.createTextNode("Phone");
th.appendChild(title);
tr.appendChild(th);

// 创建表数据行 
Element dataTr = document.createElement("tr");
tbody.appendChild(dataTr);

// 创建表格数据单元格1
Element td = document.createElement("td");
Text data = document.createTextNode("John Doe");
td.appendChild(data);
dataTr.appendChild(td);

// 创建表格数据单元格2
td = document.createElement("td");
data = document.createTextNode("john.doe@example.com");
td.appendChild(data);
dataTr.appendChild(td);

// 创建表数据单元格 3
td = document.createElement("td");
data = document.createTextNode("123-456-789");
td.appendChild(data);
dataTr.appendChild(td);

// 将表格附加到正文
body.appendChild(table);

// 将文档保存到文件
document.save(savePath);
在 Java 中创建带有样式属性的 HTML 表

在 Java 中创建带有样式属性的 HTML 表

在 Java 中使用 Rowspan 和 Colspan 创建 HTML 表

<colspan><rowspan> 是 HTML 中的属性,在 <td><th> 元素控制 HTML 表格中多个列或多行的单元格跨度。我们可以设置<colspan><rowspan> 使用 SetAttribute(string name, string value) 方法为表格单元格设置属性,如下所示:

// 准备编辑文件保存路径 
String savePath = "C:\\Files\\ColSpanRowSpan.html";

// 初始化一个空的 HTML 文档
HTMLDocument document = new HTMLDocument();

// 创建一个 style 元素并为 table 元素分配颜色 border-style 和 border-color 值
Element style = document.createElement("style");
style.setTextContent("table, th, td { border: 1px solid #0000ff; border-collapse: collapse;}");

// 找到文档头元素并将样式元素附加到头部
Element head = document.getElementsByTagName("head").get_Item(0);
head.appendChild(style);

// 声明一个引用的变量体<body>元素
Element body = document.getBody();

// 创建表格元素
Element table = document.createElement("table");

// 创建表体
Element tbody = document.createElement("tbody");
table.appendChild(tbody);

// 创建表标题行 
Element tr = document.createElement("tr");
tbody.appendChild(tr);

// 创建表头单元格 1
Element th = document.createElement("th");
Text title = document.createTextNode("Person Details");
th.appendChild(title);
tr.appendChild(th);

// 指定列跨度
th.setAttribute("colspan", "2");

// 创建表数据行 
Element dataTr = document.createElement("tr");
tbody.appendChild(dataTr);

// 创建表头单元格 1
th = document.createElement("th");
title = document.createTextNode("Name");
th.appendChild(title);
dataTr.appendChild(th);

// 创建表格数据单元格2
Element td = document.createElement("td");
Text data = document.createTextNode("John Doe");
td.appendChild(data);
dataTr.appendChild(td);

// 创建表数据行 
dataTr = document.createElement("tr");
tbody.appendChild(dataTr);

// 创建表格标题单元格
th = document.createElement("th");
title = document.createTextNode("Phone");
th.appendChild(title);
dataTr.appendChild(th);

// 指定列跨度
th.setAttribute("rowspan", "2");

// 创建表格数据单元格
td = document.createElement("td");
data = document.createTextNode("123-456-780");
td.appendChild(data);
dataTr.appendChild(td);

// 创建表数据行 
dataTr = document.createElement("tr");
tbody.appendChild(dataTr);

// 创建表格数据单元格
td = document.createElement("td");
data = document.createTextNode("123-456-789");
td.appendChild(data);
dataTr.appendChild(td);

// 将表格附加到正文
body.appendChild(table);

// 将文档保存到文件
document.save(savePath);
在 Java 中使用 Rowspan 和 Colspan 创建 HTML 表

在 Java 中使用 Rowspan 和 Colspan 创建 HTML 表

获取免费许可证

获取免费的临时许可证尝试 Aspose.HTML for Java,不受评估限制。

HTML 在线表格生成器

您还可以使用这个免费的 HTML 表格生成器 Web 应用程序在线创建 HTML 表格,该应用程序是使用此 API 开发的。

创建 HTML 表 – 学习资源

除了创建 HTML 表之外,您还可以了解有关创建、操作和转换 HTML 文档的更多信息,并使用以下资源探索该库的各种其他功能:

结论

在这篇博文中,我们学习了如何用 Java 创建 HTML 表。通过遵循本文中概述的步骤,您可以轻松开发自己的自定义解决方案来处理 HTML 表格。如有任何疑问,请随时通过我们的免费支持论坛与我们联系。

也可以看看