在过去的几个小时里,我一直在努力做到这一点,而且有点失去它。
我想要做的就是打开一个文件,阅读它并将其显示到控制台;就是这样。
我正在使用eclipse开发android 2.3.3。
我尝试过使用一些不同的方法来处理我在这里找到的代码,以及其他网站。这就是我现在拥有的以及它的全部内容:
在OnCreate函数中:
setContentView(new TestMap(this));
testMap类:
TestMap(Context context){
super(context);
// might need to be on the panel class
loadTileFile("worldonelayout.txt", context);
在同一个班级:
private void loadTileFile (String filename, Context context){
FileInputStream input = null;
InputStreamReader reader = null;
char[] inputBuffer = new char[256];
String data = null;
try {
input = context.openFileInput("worldonelayout.txt");
reader = new InputStreamReader(input);
reader.read(inputBuffer);
data = new String(inputBuffer);
System.out.println(data);
Toast.makeText(context, "Text read", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(context, "Text not read", Toast.LENGTH_SHORT).show();
} finally {
try {
input.close();
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
此代码无效。它总是遇到异常。
“/ data / data / com.name.somethingiremoved / files / worldonelayout.txt(没有这样的文件或目录)”。
这发生在第一个CATCH。 BTW我的文件位于根目录:Documents\Eclipse\workspace\project\worldonelayout.txt
。我也可以在左侧的浏览器中看到该文件
从我在这里和其他网站上看到的,它与从Activity派生的Context类有关吗?我不希望将此代码与我的活动放在同一个类中。这有什么方法吗?
如果您还需要我的更多信息,请与我联系。
答案 0 :(得分:1)
打开的文件正在手机的文件系统上查找文件,而不是计算机上的文件。它告诉你它准确找到它的位置 - 在/data/data/com.name.somethingiremoved/files/worldonelayout.txt下的电话