android studio 中的模型文件放在哪里?我如何从普通类而不是活动加载它?

问题描述 投票:0回答:2

我尝试了许多不同的方法来加载模型文件,甚至在 android studio 中加载简单的文本文件。我已将其放入资产文件夹中,但无法从中读取,因为我的类不是活动类。我尝试将文件与类放在一起并直接读取它,但这不起作用。最近,我尝试从 res/raw 文件夹中读取它(创建了 raw。),但我的应用程序仍然找不到该文件。这是我从堆栈上的另一个答案中得到的最新尝试,该答案尚未起作用,因为它仍然找不到模型。

String file = "res/raw/filteredsvmmodel2.model";
InputStream in this.getClass().getClassLoader().getResourceAsStream(file); 

我陷入了这个问题,任何可以解决读取简单文件问题的方法、导入、库或其他任何东西都会有所帮助。

android file android-studio
2个回答
0
投票

我已将其放入资产文件夹中,但无法从中读取,因为我的课程不是活动课程。

Context
传递给您的类(例如,在其构造函数中)。您使用什么
Context
取决于您在何处创建此类实例以及您打算保留这些实例多长时间。您可以使用
Context
触发类实例的创建(例如,
Activity
Service
)。或者,您可以对其中之一调用
getApplicationContext()
,然后将
Context
传递给您的构造函数。

最近我尝试从 res/raw 文件夹中读取它(创建了 raw。),但我的应用程序仍然找不到该文件。

资源是开发计算机上的文件。它们不是设备上的文件。您可以通过在

openRawResource()
对象上调用
Resources
来读取原始资源。您可以通过拨打
getResources()
上的
Context
获得其中之一。


0
投票

@Brock 你能解决这个问题吗?我面临着类似的问题。我有一个来自 weka 的 .model 文件,我想将它与我的 android studio 集成。你能帮我吗?我正在使用 Kotlin 构建我的应用程序。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.