小编Atm*_*tma的帖子

使用JExcelApi导入工作表

首先让我说我是Java和这个网站的新手.我现在读了一两本书,从那以后一直在寻找小项目让我自己受理.我试图研究这个,但我找不到我需要的信息.话虽如此,这是我在这里的第一个问题所以,如果这是非常早期的初学者的东西,我错过了一些明显的道歉,我道歉.

关于这个项目,我的姐夫在工作中有一个问题,他在一个文件夹中有90个左右的Excel工作簿,他需要将每个报告的第一个工作表合并到一个主工作簿中.他可以手动完成,但我认为尝试找出一种使用Java的方法会很有趣.

我做了一些研究并下载了JExcelAPI并将.jar添加到了我的类路径中.我在我的电脑上创建了两个目录.

C:\ EXCEL \

C:\ EXCEL \成品\

在C:\ Excel \里面我创建了两个虚拟excel表.为了测试目的,我已经将每个表上的第一张表重命名.在已完成的文件夹中,我创建了我打算将这些工作表合并到的主文档.当工作表为空并且我运行时,工作表似乎被复制了.主文件中有两个页面,它们的名称与我在各自工作簿中给出的名称相对应,因此我认为这是有效的.但是,当我向其中一个工作表添加信息并尝试运行它时,我得到一个空指针异常.我已经在这个工作了好几个小时,所以也许我只是需要休息一下,但我无法弄清楚出了什么问题.我去了JExcelAPI的网站,尝试了看起来像过时的方法(在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)
Run Code Online (Sandbox Code Playgroud)

- 码 -

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 …
Run Code Online (Sandbox Code Playgroud)

java jexcelapi

0
推荐指数
1
解决办法
3808
查看次数

标签 统计

java ×1

jexcelapi ×1