Java 使用ApachePOI在Android Studio中打开项目中的文件
我放置了一个名为menuA的xlsx文件,如下图所示: 但我担心使用FileInputStream无法正确访问它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
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”)代码>但文件仍未读取