我正在尝试使用 jspreadsheet-1.0.jar 在文件夹(以编程方式创建)中创建 .xlsx 文件。文件是以 3 KB 大小创建的,如果我在路径 / storage / sdcard0 中的文件夹外创建它,我可以打开并查看它,但如果我在文件夹中创建 ,它只显示无法打开的 0 KB 文件。我的代码如下:
创建文件夹:
String FOLDERNAME="/foldername";
File dir = new File(Environment.getExternalStorageDirectory(), FOLDERNAME);
if(!dir.exists())
{
dir.mkdir();
}
文件生成(在文件夹中):
public void generate(Context mainContext)
{
Worksheet sheet1 = new Worksheet();
sheet1.set("A1",new Cell(100));
context = mainContext;
Workbook book1 = new Workbook();
book1.getSheets().add(sheet1);
try {
book1.save(Environment.getExternalStorageDirectory().getAbsolutePath()+"/foldername/file.xlsx");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
new SingleMediaScanner(context,Environment.getExternalStorageDirectory().getAbsolutePath()+"/foldername/file.xlsx");
}
}
答案 0 :(得分:1)
尝试使用
book1.save(Environment.getExternalStorageDirectory()+"/foldername/file.xlsx");
而不是
book1.save(Environment.getExternalStorageDirectory().getAbsolutePath()+"/foldername/file.xlsx");