我正在尝试在External Micro SD Card
中创建数据库而不是SD卡。
显示此错误:
Caused by: java.lang.IllegalArgumentException: File mounted/extSdCard/mytest contains a path separator
我正在走这条路。
同样适用于SD卡。但不适用于我的Extenally Micro SD卡。
public SDcardDatabase(final Context context) {
super(context,Environment.getExternalStorageState()+"/extSdCard/mytest", null, 1);
}
我正在写这样的数据: -
public void saveData(View v) {
SQLiteDatabase sqldb = null;
SDcardDatabase mydb = new SDcardDatabase(this);
sqldb = mydb.getWritableDatabase();
ContentValues insertData = new ContentValues();
insertData.put(SDcardDatabase.NAME, etname.getText().toString());
insertData.put(SDcardDatabase.ADDRESS, etadd.getText().toString());
insertData.put(SDcardDatabase.CITY, etcity.getText().toString());
sqldb.insert("mylistdata", SDcardDatabase.NAME , insertData);
sqldb.close();
Toast.makeText(this,"Data saved", Toast.LENGTH_SHORT).show();
}
答案 0 :(得分:0)
java.lang.IllegalArgumentException: File mounted/extSdCard/mytest contains a path separator
你应该去this question,这也可能解决你的问题:
你应该 提供File的名称,而不是Full path作为您的Argument。
documentation也表明这个函数的名称参数:
要打开的文件的名称不能 包含路径分隔符。