Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 拆分列表_Java_Regex_Excel_Apache Poi - Fatal编程技术网

Java 拆分列表

Java 拆分列表,java,regex,excel,apache-poi,Java,Regex,Excel,Apache Poi,关于任何ArrayList的拆分,我有两个问题 我的列表empdetails中有一个返回的是[“员工”、“Emp姓名”、“Emp性别”、“Emp地址”]-如果你看到这实际上是一个大小为1的列表,那么即使我迭代这个列表,它也只会给我一个值,当我试图用excel编写这个列表时,它会在一个单元格中写入“员工”、“Emp姓名”、“Emp性别”、“Emp地址”。有没有办法在不同的单元格中写入员工、Emp姓名等 我的第二个列表“fieldValues”包含员工的值,如下所示:[“5001”、“Emp测试”、

关于任何ArrayList的拆分,我有两个问题

  • 我的列表empdetails中有一个返回的是
    [“员工”、“Emp姓名”、“Emp性别”、“Emp地址”]
    -如果你看到这实际上是一个大小为1的列表,那么即使我迭代这个列表,它也只会给我一个值,当我试图用excel编写这个列表时,它会在一个单元格中写入“员工”、“Emp姓名”、“Emp性别”、“Emp地址”。有没有办法在不同的单元格中写入员工、Emp姓名等
  • 我的第二个列表“fieldValues”包含员工的值,如下所示:
    [“5001”、“Emp测试”、“男性”、“德克萨斯州”、“5002”、“Emp测试1”、“女性”、“WV”]
    :我想在excel的第二行插入Emp 5002。我想到的唯一方法是检查“Texas”后面的单个分隔符,但不确定如何执行 第二个问题的代码:

    String[] tempValue = new String[fieldValues.size()];
    int j = 0;
    for (Object valueInfo : fieldValues){
        String [] fieldInfo = ((String)valueInfo).split(",");
        if(fieldInfo.length > 0){
            tempValue[j] = fieldInfo[0];
        }
        j++;
    } 
    

    谢谢你的帮助

    要回答您的第一个问题, 您应该删除值上的大括号,并根据分号分隔符进行拆分,然后可以写入不同的单元格

    第二个问题: 我假设每行中的列数是固定的,这样变量“j”将递增到每行中的最后一列,然后插入新行并重置计数器。在这里,即使列值为空,也应该使用下面的拆分方法进行计数

     String [] fieldInfo = ((String)valueInfo).split(",", -1);
    

    您是否使用任何excel库来执行此操作,如jexcel、poi等?谢谢您的回复。我得到了第一个问题的答案,但第二个问题得不到答案。变量“j”一直递增到列表末尾。我想在“Texas”后面插入新行,在列表末尾之前不应该递增。假设每行包含10列,为每次迭代增加j值,并检查j==10。如果是这样,您知道您到达了行的末尾,通过将j重置为0开始插入新行是的,但是每行中的列不是固定的。哦,上帝……除了URS之外没有其他方法。但是我觉得上游应该考虑发送正确的方式来指示行的结尾。