怎么快速生成树形带层级的表格,可以给出示例代码吗?
@321227850 你可以试试这样的:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.startTable();
builder.startTable();
builder.insertCell();
builder.write("Column 1");
builder.insertCell();
builder.write("Column 2");
builder.endRow();
String[][] data = {
{"Root", ""},
{"Child 1", "Root"},
{"Child 2", "Root"},
};
boolean isFirst = false;
for (String[] entry : data) {
builder.insertCell();
if (!isFirst) {
builder.write(entry[0]);
isFirst = true;
}
int indentLevel = getIndentLevel(entry[1], data);
builder.insertCell();
if (indentLevel == 1)
builder.write(entry[0]);
builder.endRow();
}
builder.endTable();
doc.save("HierarchicalTable.docx");
private static int getIndentLevel(String parent, String[][] data) {
int level = 0;
while (!parent.isEmpty()) {
for (String[] entry : data) {
if (entry[0].equals(parent)) {
level++;
parent = entry[1];
break;
}
}
}
return level;
}