如集合中的数据“开始时间、开始时间1、开始时间2、停止时间、开始时间1、开始时间2、停止时间、开始时间1、开始时间2、结束时间”。 如果想把这些数据以 停止时间来区分呢,然后导出到excel的格式是这样的。如第一行为“开始时间、开始时间1、开始时间2、停止时间” 第二行为“开始时间1、开始时间2、停止时间” 第三行为“开始时间1、开始时间2、结束时间”这样的代码该如何写呢?大侠指导下啊。不甚感激。

解决方案 »

  1.   


    public static void main(String[] args) throws IOException {
    List<String> list = new ArrayList<String>();
    list.add("开始时间");
    list.add("开始时间1");
    list.add("开始时间2");
    list.add("停止时间");
    list.add("开始时间1");
    list.add("开始时间2");
    list.add("停止时间");
    List<String> temp = new ArrayList<String>();
    HSSFWorkbook wb = new HSSFWorkbook();
    FileOutputStream fileOut = new FileOutputStream("D:\\workbook.xls");
    HSSFSheet sheet = wb.createSheet("new sheet");
    int row = 0;
    for(String str :list){
    if("停止时间".equals(str)){
    temp.add(str);
    HSSFRow rows = sheet.createRow(row);
    int cell = 0;
    for(String s : temp){
    HSSFCell cells = rows.createCell(cell);
    cells.setCellValue(s);
    cell++;
    }
    row++;
    temp.clear();
    }else{
    temp.add(str);
    }

    }
    wb.write(fileOut);
    fileOut.close();
    }
      

  2.   

    这个可以根据excle的列把相同名称的放在同一列上吗?
      

  3.   

    这个可以根据excle的列把相同名称的放在同一列上吗?
    额。开始你没说要放在同一列上吧!
    这样,你在插入第一行的时候,用map记录下名称和位置,以后再插入的时候,去map中找相同名称在什么位置,然后插入就行了!
      

  4.   

    这个可以根据excle的列把相同名称的放在同一列上吗?
    额。开始你没说要放在同一列上吧!
    这样,你在插入第一行的时候,用map记录下名称和位置,以后再插入的时候,去map中找相同名称在什么位置,然后插入就行了! 嗯,非常感谢。我试试
      

  5.   

    这个可以根据excle的列把相同名称的放在同一列上吗?
    额。开始你没说要放在同一列上吧!
    这样,你在插入第一行的时候,用map记录下名称和位置,以后再插入的时候,去map中找相同名称在什么位置,然后插入就行了! hi,你好,再请教下,如你上代码,如果最后一个不是停止时间,后边是不是就不会在excel中体现了呢?
      

  6.   

    这个可以根据excle的列把相同名称的放在同一列上吗?
    额。开始你没说要放在同一列上吧!
    这样,你在插入第一行的时候,用map记录下名称和位置,以后再插入的时候,去map中找相同名称在什么位置,然后插入就行了! hi,你好,再请教下,如你上代码,如果最后一个不是停止时间,后边是不是就不会在excel中体现了呢?
    这东西你可以自己改着试试呀!