chen--bigdata 2016-05-03 14:06 采纳率: 33.3%
浏览 1678

java中excel写入,为什么只显示一行?

public static void main(String[] args) throws Throwable{
int q=0;
String fileName="C:\Users\Chen\Desktop\123.xls";//以下是读取一个excel文件
File file=new File(fileName);
Workbook rb=Workbook.getWorkbook(file);
WritableWorkbook wb=Workbook.createWorkbook( new File( "test.xls" ));//以下是生成一个excel文件
WritableSheet new_sheet = wb.createSheet( "sheet" , 0 );
Sheet sheet=rb.getSheet(0);
for(int i=0;i<sheet.getRows();i++){
for(int j=0;j<sheet.getColumns();j++){
Cell cell=sheet.getCell(j,i);
String[] s;
s=cell.getContents().split(";");//作者分列,存储到字符串数组中。
int m=s.length;
System.out.println(m);
if(m==1){
Label label = new Label(0,q++,s[0]);
System.out.println(s[0]);
new_sheet.addCell(label);
wb.write();
}else{
for(int w=0;w<m;w++){
for(int x=w+1;x<m;x++){
Label label = new Label(0,q,s[w]);
System.out.println(s[w]);
new_sheet.addCell(label);
Label label2 = new Label(1,q++,s[x]);
System.out.println(s[x]);
new_sheet.addCell(label2);
wb.write();
}

                 }
             }           
         }
     }
     wb.close(); 
            ![图片说明](https://img-ask.csdn.net/upload/201605/03/1462284278_703096.png)
            初步学习java,请大神指点~~
  • 写回答

1条回答

  • danielinbiti 2016-05-03 14:59
    关注
     把wb.write(); 方法从for循环中移除,在wb.close()前面调用就可以了,在里面调用就只写一次。也就只写一条
    
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题