我已尝试过许多不同的方法来加载模型文件甚至是android studio中的简单文本文件。我已将它放在assets文件夹中但无法从中读取,因为我的类不是活动类。我尝试将文件放在类中并直接读取但是没有用。最近我尝试从res / raw文件夹中读取它(raw已创建。)但我的应用程序仍无法找到该文件。这是我最近的尝试,我从堆栈上的另一个答案得到了没有用的,因为它仍然无法找到模型。
String file = "res/raw/filteredsvmmodel2.model";
InputStream in this.getClass().getClassLoader().getResourceAsStream(file);
我遇到了这个问题,任何可以解决阅读简单文件问题的方法,导入,库或其他任何方法都会有所帮助。
答案 0 :(得分:0)
我已将它放在assets文件夹中但无法从中读取,因为我的类不是活动类。
将Context
传递给您的班级(例如,在其构造函数中)。您使用的Context
取决于您创建此类实例的位置以及您打算保留这些实例的时间。您可以使用触发创建类“实例”的Context
(例如Activity
,Service
)。或者,您可以在其中一个上调用getApplicationContext()
,然后将Context
传递给您的构造函数。
最近我尝试从res / raw文件夹中读取它(raw已创建。)但我的应用程序仍无法找到该文件。
资源是开发计算机上的文件。它们不是设备上的文件。您通过在openRawResource()
对象上调用Resources
来读取原始资源。您可以通过getResources()
上的Context
来获取其中一个。