问题“如何逐行读取本地(res / raw)文件?” 处理类似的问题,但我无法根据那里提供的答案构建解决方案。我确实得到了一条非常有用的信息(具有 readLine 方法的 DataInputStream 类),我一直在开发者网站上对此进行研究并尝试使其工作。
我想要做的是将存储在文本文件的连续行中的信息读入字符串数组,这样第一行是第一个数组元素,第二行是下一个数组元素,等等......然后这个字符串数组将用于填充下一个打开的活动中的文本字段。这一切都发生在开关盒内(取决于情况,即选择了哪个列表项,加载了不同的文本文件)。这是我到目前为止所拥有的:
//Retrieve necessary text file for inputstream
InputStream buildinginfo = getResources().openRawResource(R.raw.testbuilding);
class DataInputStream extends FilterInputStream{
protected DataInputStream(InputStream buildinginfo) {
super(buildinginfo);
// TODO Auto-generated constructor stub
int i;
String[] building_info;
//Assign lines of text to array
for(i=0; i<5; i++){
building_info[i] = buildinginfo.readLine();
}
}
}
到目前为止,除了这些错误之外,编辑器还可以,而且我没有足够的经验来理解它们。我明白他们在说什么,但不知道如何解决。错误位于我试图设置输入流并分配值的开关盒内的部分。最重要的是,在执行 readLine 命令的行中,我得到:“- 未定义类型 DataInputStream 的方法 readLine” “- 未定义类型 InputStream 的方法 readLine”
这我不明白,因为如果我没记错的话,这里(http://developer.android.com/reference/java/io/DataInputStream.html)说 DataInputStream 类有可用的 readLine 方法(我发现了关于这来自上面提到的问题)。显然我没有正确使用 DataInputStream,但我似乎无法弄清楚如何。我在这里查看了几个问题,并多次引用了上面链接的页面。
如果有人能看到我做错了什么,我将非常感谢您的帮助。如果我为这种类型的任务完全找错了树,我为浪费时间而道歉,但是非常感谢一些指导或推荐到适当的教程资源。我花了过去两天试图找出这些错误。