写了一个程序将数据导入到Excel表中,在PC机的模拟机上可以运行成功,数据保存很好了。
可是在手机上运行,就出问题了,数据保存不了,报错为空指针异常,找不到创建的文件。
代码如下,求解释。
创建表格:/创建Excel文件
public void createExcel(){
try {
//打开文件
WritableWorkbook book= Workbook.createWorkbook(new File("/sdcard/test.xls"));
//生成名为"test"的工作表,参数0表示这是第一页
WritableSheet sheet=book.createSheet("test",0);
Label labe=new Label(0,0,"test");
//将定义好的单元格添加到工作表中
sheet.addCell(labe);
//写入数据并关闭文件
book.write();
book.close();
}catch(Exception e){
System.out.println(e);
}
}存数据到Excel中:
//保存数据到Excel
public static void writeExcel() {
try {
Workbook rwb = Workbook.getWorkbook(new File("/sdcard/test.xls"));
WritableWorkbook wwb = Workbook.createWorkbook(new File("/sdcard/test.xls"), rwb);
// 创建工作表
//提取MscTest工作表,参数0表示这是第一页
WritableSheet sheet=wwb.getSheet("test");
int rsRows = sheet.getRows();
//添加新数据
jxl.write.Number number = new jxl.write.Number(0, rsRows, cpuMax);
//cpuMax是一个int数据
sheet.addCell(number);
wwb.write();
wwb.close();
} catch (Exception e) {
System.out.println(e.toString());
}
} //权限设置
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<!-- 往SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
可是在手机上运行,就出问题了,数据保存不了,报错为空指针异常,找不到创建的文件。
代码如下,求解释。
创建表格:/创建Excel文件
public void createExcel(){
try {
//打开文件
WritableWorkbook book= Workbook.createWorkbook(new File("/sdcard/test.xls"));
//生成名为"test"的工作表,参数0表示这是第一页
WritableSheet sheet=book.createSheet("test",0);
Label labe=new Label(0,0,"test");
//将定义好的单元格添加到工作表中
sheet.addCell(labe);
//写入数据并关闭文件
book.write();
book.close();
}catch(Exception e){
System.out.println(e);
}
}存数据到Excel中:
//保存数据到Excel
public static void writeExcel() {
try {
Workbook rwb = Workbook.getWorkbook(new File("/sdcard/test.xls"));
WritableWorkbook wwb = Workbook.createWorkbook(new File("/sdcard/test.xls"), rwb);
// 创建工作表
//提取MscTest工作表,参数0表示这是第一页
WritableSheet sheet=wwb.getSheet("test");
int rsRows = sheet.getRows();
//添加新数据
jxl.write.Number number = new jxl.write.Number(0, rsRows, cpuMax);
//cpuMax是一个int数据
sheet.addCell(number);
wwb.write();
wwb.close();
} catch (Exception e) {
System.out.println(e.toString());
}
} //权限设置
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<!-- 往SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
解决方案 »
- marvll 8787三合一模块移植 wifi和蓝牙不能同时用?
- 《android SDK 问题》
- 请问这是imageview默认属性吗
- Android 通过通知查看详细信息
- 求解,android中listview的items同时添加edittext和checkbox的问题
- 求一个可行的图片压缩方案!用Bitmap.Factory不能解决问题!!!
- 关于如何实现图片滑动交换效果的问题
- 动态加载数据,notifyDataSetChanged更新存在问题?求指导。
- 发布自己写的一个小APP《每日小故事》
- Android FTP下载 循环获取文件异常问题
- Android 系统属性SystemProperty分析
- android 3G模块端口映射到PC上
没人啊,算了我自己找资料吧,Android 1.5的貌似不行,不过2.1和2.2可以运行OK
也可以换用poi。jar试试
/sdcard/在已经废弃了不建议用了,可以能些设备还会有一个/sdcard/的链接到真正sd卡目录
http://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory()