我正在尝试使用 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");
}
}
最佳答案
尝试使用
book1.save(Environment.getExternalStorageDirectory()+"/foldername/file.xlsx");
而不是
book1.save(Environment.getExternalStorageDirectory().getAbsolutePath()+"/foldername/file.xlsx");
关于java - .xlsx 文件在文件夹外部创建,但不在文件夹内部创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21925294/