我是一个安卓开发者,我有Jetpack Compose的经验.现在我正在try 构建桌面应用程序,所以我找到了这个Compose for Desktop项目.我想用我的桌面应用程序存储一个JSON文件,这样我就可以从我的桌面应用程序中读取该文件并将其显示给用户.

在安卓系统中,我可以使用rawassets个文件夹,但我不知道如何在Compose for Desktop中做到这一点.

如果有人能为我指出正确的方向,我将不胜感激.

Edit

不仅是JSON文件,我还想存储一些其他文件,比如HTML,所以我真的需要一种在应用程序中存储文件的方法.

推荐答案

您可以将任何assets资源 文件放入src\jvmMain\resources中,使用useResource访问它们.

例如,将json个文件读取为文本:

useResource("data.json") { stream ->
    val textJson = stream.bufferedReader().use { it.readText() }
}

Kotlin相关问答推荐

Fleet无法从构建文件自动重新加载更改错误'

在Kotlin中将ClosedRange字符串转换为List?<>

如何为集成测试配置Gradle JVM测试套件?

如何在操作系统版本上正确获取Room数据库的路径>;=26 sdk?

在 Kotlin 中实现并输入 Either

Kotlin 说不需要强制转换,但删除后会出现新警告

Rabin-Karp字符串匹配的实现(Rolling hash)

通过顺序多米诺骨牌操作列表管理对象的最佳方法是什么?

在 Kotlin 中,我可以在集合上有一个条件构建器元素吗?

有没有一种简单的方法可以将数组/列表中的每个元素相互相乘 - Kotlin?

嵌套数组 indexOf()

比较 Kotlin 中的可比对象列表

DatabaseManager_Impl 不是抽象的,不会覆盖 RoomDatabase 中的抽象方法 clearAllTables()

Kotlin 的 isNullOrBlank() 函数是否可以导入 xml 以用于数据绑定

如何处理 Kotlin 中的异常?

如何使用Kotlin Dokka记录主构造函数参数

@uncheckedVariance 在 Kotlin 中?

Jacoco在Gradle 7.0.2和Kotlin 1.5.10上失败

Kotlin 接口属性:只需要公共 getter 而没有公共 setter

Kotlin类型安全类型别名