0

尽管文件存在,但当我尝试在 java 中读取 excel 文件时出现以下错误。我在Windows环境中。我已确认该文件存在于该位置。

java.io.FileNotFoundException: D:\myfile.xls (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at jxl.Workbook.getWorkbook(Workbook.java:213)

我的代码如下:

       wb = Workbook.getWorkbook(new File("D:/myfile.xls"));
4

3 回答 3

2

尝试过

   wb = Workbook.getWorkbook(new File("D:\\myfile.xls"));

另请参阅:File.separator 或 File.pathSeparator

确保您的文件在 D 盘。

于 2013-04-24T09:37:45.753 回答
0

让我举个例子,代码已经过测试,如果可行,请告诉我。

文件 fileExcel = new File("D:/DATAVALUE.xls");

工作簿 w;

w = Workbook.getWorkbook(fileExcel); 工作表工作表 = w.getSheet(0);

我测试了这段代码,让我为你捕获了这段代码。

/* * 要更改此模板,请选择工具 | 模板 * 并在编辑器中打开模板。*/ 包堆栈溢出;

导入java.io.File;导入 jxl.Cell;导入 jxl.Sheet;导入 jxl.Workbook;

/** * * @author jwijaya */ public class Stackoverflow {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    // TODO code application logic here
    try
                    {

                    File fileExcel = new File("D:/tes.xls");
                    Workbook w;
                    w = Workbook.getWorkbook(fileExcel);
                    Sheet sheet = w.getSheet(0);

                    for (int j = 0; j < sheet.getRows(); j++) {
                        for (int i = 0; i < sheet.getColumns(); i++) {
                            Cell cell = sheet.getCell(i, j);


                                                if((j==0 && i==0 ) || (j==0 && i==1) ||  (j==0 && i==2) || (j==0 && i==3))
                                                {
                                                System.out.println("Isi tabel "
                                                + cell.getContents());
                                                }

                        }
                                                Cell tanggal = sheet.getCell(0,j);
                                                String tanggalfinal = tanggal.getContents(); 
                                                System.out.println(tanggalfinal);

                                                Cell datausd = sheet.getCell(1,j);
                                                String datausdfinal = datausd.getContents(); 
                                                System.out.println(datausdfinal);

                                                Cell datajapan = sheet.getCell(2,j);
                                                String datajapanfinal = datajapan.getContents(); 
                                                System.out.println(datajapanfinal);


                                                Cell dataaus = sheet.getCell(3,j);
                                                String dataausfinal = dataaus.getContents(); 
                                                System.out.println(dataausfinal);



                    }

                    }
                    catch (Exception e)
                    {
                    System.err.println("Got an exception!");
                    System.err.println(e.getMessage());
                    }
} }

下载这个文件

https://hotfile.com/dl/204326337/3f04919/tes.xls.html
于 2013-04-24T09:48:48.413 回答
0

如果您事先创建了 excel 文件,请尝试将其保存为 97-2000 工作表(即旧的 Excel 格式)。

于 2015-06-24T06:16:36.610 回答