【发布时间】:2018-04-22 10:42:16
【问题描述】:
我需要读取存储在src/main/assets/ 的文本文件,即;在资产文件夹中并将其作为字符串获取。
有没有简单的方法。
Java 的复制、粘贴、转换功能都比较麻烦,所以我宁愿使用 kotlin 的方式。
我需要一个 kotlin 方法来做到这一点
【问题讨论】:
标签: android string file kotlin android-assets
我需要读取存储在src/main/assets/ 的文本文件,即;在资产文件夹中并将其作为字符串获取。
有没有简单的方法。
Java 的复制、粘贴、转换功能都比较麻烦,所以我宁愿使用 kotlin 的方式。
我需要一个 kotlin 方法来做到这一点
【问题讨论】:
标签: android string file kotlin android-assets
我在 youtube 视频中发现了这个。这是链接https://www.youtube.com/watch?v=o5pDghyRHmI
val file_name = "qjsonfile.json"
val json_string = application.assets.open(file_name).bufferedReader().use{
it.readText()
}
将 JSON 或文本保存到字符串 json_string。
【讨论】:
如有疑问,请自行关闭流!
application.assets.open(file_name).apply {
json_string = this.readBytes().toString(Charsets.UTF_8)
}.close()
【讨论】:
. bufferedReader().use{...},则无需.close()
您不需要Application 来读取assets 文件夹中的文本文件。
fun readAsset(context: Context, fileName: String): String =
context
.assets
.open(fileName)
.bufferedReader()
.use(BufferedReader::readText)
【讨论】: