You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Apache POI的Word单段落内用XWPFRun实现项目符号

在同一XWPF段落中用XWPFRun实现项目符号列表

Word原生的项目符号属于段落级格式,没办法通过单个XWPFRun直接触发段落的编号/项目符号规则。如果必须在同一段落内模拟列表效果,只能手动添加项目符号字符,配合缩进设置实现视觉上的列表样式。

你的原有代码存在两个核心问题:

  • 循环中复用同一个run39,每次调用setText会覆盖之前的内容
  • 没有添加项目符号字符,也未设置缩进,最终只是普通的换行文本

修改后的可运行代码示例:

XWPFRun run38 = paragraph.createRun();
run38.setText("Same paragraph different run:");
run38.setBold(true);
run38.addBreak();

// 每个列表项单独创建XWPFRun,避免文本覆盖
for(int u = 0; u < array.getArrayValue().length; u++){
    XWPFRun runItem = paragraph.createRun();
    // 添加项目符号字符(可替换为"- "、"○ "等)
    runItem.setText("● ");
    // 追加列表项文本,参数1表示不覆盖已输入的项目符号
    runItem.setText(array.getArrayValue()[u], 1);
    // 设置水平缩进,模拟原生列表的缩进效果(单位twip,1英寸=1440 twip)
    runItem.setIndentationLeft(200);
    runItem.addBreak();
}

补充说明:

  • 必须为每个列表项新建XWPFRun,才能保留独立的文本和格式
  • 使用setText(内容, 1)实现文本追加,避免覆盖前面的项目符号
  • 可根据需求调整项目符号样式和缩进数值,匹配文档整体格式

内容的提问来源于stack exchange,提问作者Jeet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 06:15:38