Android文件I/O openFileInput()未定义
我正在看一个Android文件I/O的例子。我想知道为什么openFileInput会出现一个错误,因为它是一个未定义的函数。我在想也许我错过了一个重要环节?如果没有,那么肯定还有其他问题 如果错误是: 类型的openFileInput(字符串)方法未定义 您必须在中使用Android文件I/O openFileInput()未定义,android,file-io,Android,File Io,我正在看一个Android文件I/O的例子。我想知道为什么openFileInput会出现一个错误,因为它是一个未定义的函数。我在想也许我错过了一个重要环节?如果没有,那么肯定还有其他问题 如果错误是: 类型的openFileInput(字符串)方法未定义 您必须在中使用openFileInput。例如,活动是一个上下文。因此,如果您将类设置为该类,则必须解决以下错误: package com.example.tictactoeshowgrid;
openFileInput
。例如,活动
是一个上下文
。因此,如果您将类设置为该类,则必须解决以下错误:
package com.example.tictactoeshowgrid;
import android.os.Bundle;
import java.io.*;
import android.widget.Toast;
import android.content.*;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
import android.content.Context;
public class ImportOBJ {
protected void onCreate(String filename) {
try
{
FileInputStream fis = openFileInput(filename);
BufferedReader reader = new BufferedReader(new InputStreamReader(fis));
String line = null, input="";
while ((line = reader.readLine()) != null)
input += line;
reader.close();
fis.close();
//toast("File successfully loaded.");
//return input;
}
catch (Exception ex)
{
//toast("Error loading file: " + ex.getLocalizedMessage());
//return "";
}
}
}
有关上下文的更多详细信息,请参见。要访问非活动类中的
openFileInput
方法,您需要通过使用参数化方法发送上下文或使用ImportOBJ
类构造函数将活动上下文传递给它,如下所示:
public class ImportOBJ extends Activity{
.
.
.
}
从您的活动传递上下文中,如下所示:
protected void onCreate(String filename,Context context) {
try
{
FileInputStream fis = context.openFileInput(filename);
//...your code here...
}
catch (Exception ex)
{
}
}
ImportOBJ_import=new ImportOBJ();
obj_import.onCreate(,您的当前活动名称,this);
你是否得到了有效的文件?意思是“xyz.txt”你写onCreate()…我确信这是用户定义的方法。你在上下文中使用它是什么意思。我还不明白答案。@user2209542请再次查看我的答案。我添加了一些细节。现在我更清楚了。我不确定我是否想要一个完整的活动,但我明白你的意思了?我的目标是在一个活动中实例化ImportOBJ,并传递一个文件名和一个数组作为结果。您可以将一个上下文实例传递给您的方法。@ρ∑ρK man请帮助!!
ImportOBJ obj_import=new ImportOBJ();
obj_import.onCreate(<File_Name_Here>,Your_Current_Activity_Name.this);