相关疑难解决方法(0)

Android在内存中创建文件夹

是否允许在Android内部存储器中创建文件夹?示例:

- data
-- com.test.app (application's main package)
---databases (database files)
---files (private files for application)
---shared_prefs (shared preferences)

---users (folder which I want to create)
Run Code Online (Sandbox Code Playgroud)

我可以users在内部存储器中创建文件夹吗?

storage android internal

15
推荐指数
2
解决办法
6万
查看次数

在应用程序的内部存储中创建子目录时删除"app_"前缀

Android提供了许多用于在设备上持久存储数据的选项.我选择了内部存储,所以请不要提出存储在SD卡上的建议.(我见过太多关于内部存储的问题有SD卡的答案!!)

我想在我的应用程序的内部存储目录中创建子目录.我按照这个SO答案,转载如下.

File mydir = context.getDir("mydir", Context.MODE_PRIVATE); //Creating an internal dir;
File fileWithinMyDir = new File(mydir, "myfile"); //Getting a file within the dir.
FileOutputStream out = new FileOutputStream(fileWithinMyDir); //Use the stream as usual to write into the file.
Run Code Online (Sandbox Code Playgroud)

不幸的是,那是用"app_"前缀创建子目录.因此,从示例中,子目录看起来像"app_mydir"(不理想).

这个SO问题的答案表明你可以通过这种方式摆脱"app_"前缀:

m_applicationDir = new File(this.getFilesDir() + "");
m_picturesDir = new File(m_applicationDir + "/mydir");
Run Code Online (Sandbox Code Playgroud)

但我想写一个像/data/data/com.mypackages/files/mydir/the.zip这样的拉链.

所以,最后,我的代码如下所示:

File appDir = new File(getApplicationContext().getFilesDir() + "");
File subDir = new File(appDir + "/subDir");
File outFile = new File(subDir, "/creative.zip");
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试这个时,这会产生另一个错误:"文件不存在": …

android

5
推荐指数
1
解决办法
1263
查看次数

在android内部存储中创建目录

是否可以在目录中创建目录。要创建一个目录,只需调用以下命令:

File dir1 = getDir("dir1",Context.MODE_PRIVATE);
Run Code Online (Sandbox Code Playgroud)

但如何在其中创建其他目录dir1

这:

File dir2 =getDir("dir1"+"/"+"dir2",Context.MODE_PRIVATE);
Run Code Online (Sandbox Code Playgroud)

抛出异常:

File dirFile = java.lang.IllegalArgumentException: File app_dir1/dir2 contains a path separator
Run Code Online (Sandbox Code Playgroud)

谢谢。

java android

4
推荐指数
1
解决办法
9617
查看次数

标签 统计

android ×3

internal ×1

java ×1

storage ×1