这是我的 io.java 文件的样子,其中包含类“io”,其中包含我的方法 load() 和 save()。
package com.myschedules;
//FILE I/O
import java.io.*;
import android.content.Context;
public class io {
Context asdf;
//save file
public void save(String filename, String data) {
try {
FileOutputStream fos = asdf.openFileOutput(filename, Context.MODE_PRIVATE);
fos.write(data.getBytes());
fos.close();
}
catch (Exception ex) {
}
}
//load file
public String load(String filename) {
try {
FileInputStream fis = asdf.openFileInput(filename);
BufferedReader reader = new BufferedReader(new InputStreamReader(fis));
String line = null, input="";
while ((line = reader.readLine()) != null) input += line;
reader.close(); fis.close();
return input;
}
catch (Exception ex) {
return "";
}
}
}
当我在 main 中调用这些方法时,它看起来像这样:
io login_io = new io();
String login_preferences = login_io.load("login_preferences.dat");
不幸的是,这只会导致我的应用程序在启动时崩溃。如何将我的 load() 和 save() 函数存储在一个单独的文件中,以免弄乱我的主文件。划分对我自己的组织极为重要。这在其他语言中使用 #include 或 import 调用非常简单,但我在这里迷路了。
编辑:
好的,现在我有另一个问题......这是来自 MainActivity.java 中的。单击按钮后,我想做一些文件 I/O。但是,它最终会在“io login_io = new io(this);”上产生此错误:
“构造函数 io(new View.OnClickListener(){}) 未定义”
cmd_login.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
io login_io = new io(this);
String login_preferences = login_io.load("login_preferences.dat");