Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用ApachePOI在Android Studio中打开项目中的文件_Java_Android_Excel - Fatal编程技术网

Java 使用ApachePOI在Android Studio中打开项目中的文件

Java 使用ApachePOI在Android Studio中打开项目中的文件,java,android,excel,Java,Android,Excel,我放置了一个名为menuA的xlsx文件,如下图所示: 但我担心使用FileInputStream无法正确访问它 FileInputStream file = null; try { file = new FileInputStream(new File("menuA.xlsx")); } catch (Exception e) { e.printStackTrace(); } XSSF

我放置了一个名为menuA的xlsx文件,如下图所示:

但我担心使用FileInputStream无法正确访问它

FileInputStream file = null;
        try {
            file = new FileInputStream(new File("menuA.xlsx"));
        } catch (Exception e) {
            e.printStackTrace();
        }


    XSSFWorkbook workbook=null;
    try {
        workbook = new XSSFWorkbook(file);
    } catch (IOException e) {
        e.printStackTrace();
    }

    //create a sheet object
    XSSFSheet sheet = workbook.getSheetAt(0);

    //that is for evaluate the cell type
    FormulaEvaluator formulaEvaluator = workbook.getCreationHelper().createFormulaEvaluator();

我已经从NetBeans转移到Android Studio,在那里我的代码在Android Studio中工作得非常好。

您可以将相同的文件放在assets文件夹(放置静态资源以便于访问的地方)中,并按如下方式访问这些资产

InputStream is = getAssets().open("menuA.xlsx");
编辑:


由于您正在使用的库是
FileInputStream
,因此可以将文件复制到应用程序的私有数据存储中,即
getExternalFilesDir(null)
。然后从那里访问文件

问题是Apache需要FileInputStream来读取文件。FileInputStream不接受getAssets。我已经用以下代码尝试过这样做:
InputStream file=context.getAssets().open(“menuaa.xlsx”)但文件仍未读取