无法使用Kotlin在Android中创建.txt文件

ndh0cuux  于 6个月前  发布在  Kotlin
关注(0)|答案(1)|浏览(106)

我正在尝试使用Kotlin制作一个Android应用程序。我在使用Android Studio在我的虚拟设备上创建.txt文件时遇到了一些问题。代码如下:

val ruta: String = "documento.txt"
val f = File(ruta)
if (f.exists() == false) {
    f.createNewFile()
    Toast.makeText(this, "Document created", Toast.LENGTH_SHORT).show()
}

字符串
我注意到应用程序运行在/(root)上,所以我决定在清单中给予权限。我在清单中写了这个,但什么也没发生:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>


logcat中的结果如下:java.io.IOException: Permission denied.
我已经尝试移动创建文件的目录,但我仍然无法获得该文件。

ig9co6j1

ig9co6j11#

您正在尝试在文件系统的根目录中创建文件,因此出现权限拒绝异常。只有root用户可以访问根目录(但所有已安装的应用程序都分配了用户ID!= root)。
你可以做的是在你的application-private files目录中创建一个文件:

val file = File(context.filesDir, "doc.txt")
file.createNewFile()

字符串

相关问题