我正在尝试将文本文件写入android应用程序的内部存储。但是我无法查看文件是否生成。
我的文本文件存储在以下路径中: 数据/数据/“ MyApplcationPackageName” /files/MyFile.txt
权限:drwxrwx-x
我尝试了以下操作-
1)使用设备文件浏览器:
设备文件资源管理器无法打开我的应用程序包。如果我尝试将其打开,则会出现以下错误。 Device File Explorer
2)端子:
我也尝试在终端中使用adb打开它。但是,当我尝试打开应用程序包中的文件时,显示权限被拒绝。 adb terminal
请让我知道如何打开文本文件进行调试。预先感谢。
public static void StoreDB() {
if(isExternalStorageWritable() && checkPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
File file = getFinalDir();
try {
FileOutputStream fos = new FileOutputStream(file);
fos.write("something".getBytes());
fos.close();
ToastUtil.showToast(Resource.getAppContext(),"File Saved");
} catch (IOException e) {
Log.e("StoreDB", "Exception");
e.printStackTrace();
}
}
}
public static boolean isExternalStorageWritable() {
if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
Log.d("External storage", "Writable");
return true;
}
Log.d("External storage", "Not Writable");
return false;
}
public static boolean checkPermission(String Permission){
int check = ContextCompat.checkSelfPermission(Resource.getAppContext(),Permission);
boolean Perm = (check == PackageManager.PERMISSION_GRANTED);
Log.d("Check Permission", "Result: " + Perm);
return Perm;
}
private static File getFinalDir() {
return createDirIfNotExist(Environment.getExternalStorageDirectory().getPath() + "/Co_Ordinate.txt/");
}
public static File createDirIfNotExist(String path) {
File dir = new File(path);
if (!dir.exists()) {
dir.mkdirs();
}
return dir;
}
现在,我正在尝试将文件放入外部存储。上面的代码总是给IO异常。
答案 0 :(得分:0)
您需要启动手机以查看这些文件。或者,您也可以使用设备文件资源管理器在模拟器上完成此操作。
编辑:或仅使用不受保护的文件路径。这将创建目录。之后,您只需要将.txt文件保存到该目录即可。
Column1 Column2 Column3
0 X A
1 Y A
3 Z B
答案 1 :(得分:0)
您可以使用模拟器进行此操作。在模拟器中运行您的应用,然后转到Android设备监视器
选择设备,转到文件资源管理器菜单,然后在数据文件夹中搜索文本文件