从Apache Poi Java到Excel单元格空白

时间:2018-10-27 22:50:35

标签: java excel apache-poi

我正在尝试使用Java中的Apache Poi将一些结果写入excel文件。我将结果存储在String变量中,然后在data.put调用中使用它们。前两个可以正常工作,但是第三个会导致空白单元格。当我打印到system.out.println()时,它显示的很好吗?

// Create File to save results

//创建空白工作簿         XSSFWorkbook工作簿=新的XSSFWorkbook();

    // Create a blank sheet 
    XSSFSheet sheet = workbook.createSheet("Usage");

    // Write Header Row (Object[]) 
    Map<String, Object[]> data = new TreeMap<String, Object[]>(); 
    data.put("1", new Object[]{"Set-ID", "Title", "Usage" }); 
    int row = 1;

XML CODE to Navigate Node .....

for (int n = 0; n < childNodes.getLength(); n++) {
      Node currentnode = childNodes.item(n);
      result += node.getNodeValue();
      String NodeName = currentnode.getNodeName();
      String NodeText = currentnode.getTextContent();
      System.out.println("Child Node Name: " +NodeName);

 XML CODE to Navigate Node ..... 

      if (NodeText != null && !NodeText.isEmpty()){
      System.out.println("Child Node Text: " +NodeText);
      fileWriter.write(";"+";"+NodeText+";");
      fileWriter.write(System.lineSeparator());
      String line = String.valueOf(t);
      data.put(line, new Object[]{ t,SetID,Title,NodeText.trim()});
          }
                            }
try { 
        // this Writes the workbook gfgcontribute 
        FileOutputStream out = new FileOutputStream(new File("Usage.xlsx")); 
        workbook.write(out); 
        out.close(); 
        System.out.println("Usage.xlsx written successfully on disk."); 
    } 
    catch (Exception e) { 
        e.printStackTrace(); 
    } 

我的打印输出如下:

  

Set-Id:babf6fab-d841-4092-88f0-fcf99c4bfa90;

     

标题:二甲双胍盐酸盐片剂[A-S药物解决方案];

     

属性节点名称:代码

     

属性节点值:34067-9

     

父节点名称:部分

     

子节点:11

     

子节点名称:#text

     

子节点文本:                   子节点名称:id

     

子节点名称:#text

     

子节点文本:                   子节点名称:代码

     

子节点名称:#text

     

子节点文本:                   子节点名称:title

     

子节点文本:指示和用法

     

子节点名称:#text

     

子节点文本:

     

子节点名称:文本

     

子节点文本:                     盐酸二甲双胍片可作为饮食和运动的辅助手段,以改善成年人和成年人的血糖控制。   儿童患有2型糖尿病。

当我打开Excel工作表时,我有设置ID和标题的列表,但使用情况列为空?

1 个答案:

答案 0 :(得分:0)

发现了问题。单元格文本限制为32,767个字符,并且某些文本结果比该文本大。一旦我添加了一个大于限制的文本捕获,它就可以正常工作。