java jxl importsheet 空指针_使用JExcelApi导入工作表

错误 -spreadsheet1.xls

Exception in thread "main" java.lang.NullPointerException

at jxl.write.biff.SheetCopier.deepCopyCells(SheetCopier.java:996)

at jxl.write.biff.SheetCopier.importSheet(SheetCopier.java:542)

at jxl.write.biff.WritableSheetImpl.importSheet(WritableSheetImpl.java:2699)

at jxl.write.biff.WritableWorkbookImpl.importSheet(WritableWorkbookImpl.java:1897)

at sheetcopier.SheetCopier.main(SheetCopier.java:32)- 码 -

package sheetcopier;

import java.io.File;

import java.io.IOException;

import java.nio.file.DirectoryStream;

import java.nio.file.Files;

import java.nio.file.NotDirectoryException;

import java.nio.file.Path;

import java.nio.file.Paths;

import jxl.*;

import jxl.read.biff.BiffException;

import jxl.write.WritableWorkbook;

import jxl.write.WriteException;

public class SheetCopier {

public static void main(String[] args) throws WriteException, BiffException {

Path inputpath = Paths.get("C:/Excel"); //Directory with excel documents to be copied

File outputfile = new File("C:/ExcelFinished/finishedbook.xls"); //Master/End file

//Read all files from directory

try (DirectoryStream inputfiles = Files.newDirectoryStream(inputpath)){

//Get a writable workbook

WritableWorkbook writableworkbook = Workbook.createWorkbook(outputfile);

for(Path path: inputfiles)

{

Workbook sourceworkbook = Workbook.getWorkbook(path.toFile()); //Get the source workbook

System.out.println(path.getFileName()); //Print workbook being processed

Sheet readablesheet = sourceworkbook.getSheet(0); //Get the first sheet

writableworkbook.importSheet(readablesheet.getName(), 0, readablesheet); //Import the sheet into the new workbook

//Sheet names are imported if sheets are empty. If sheets are populated I get a null pointer error.

}

writableworkbook.write();

writableworkbook.close();

}

catch(NotDirectoryException e) {

System.err.println(inputpath + " is not a directory." + e);

}

catch(IOException e) {

System.err.println("I/O error." + e);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值