这个问题是关于Android的,虽然我不认为这是特定于Android的。
我有一个项目,我想使用两个文件:MainActivity.java和filetools.java。我在filetools.java中有三个方法,read,write和append。 我希望能够在我的MainActivity中执行类似的操作:
filetools.write("/sdcard/file.txt", "something");
MainActivity的代码只是包,导入,类和onCreate。
filetools的代码:
package com.tylerr147.FileRW;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.Scanner;
public class filetools
{
public String read(String fName){
try{
File mFile = new File(fName);
String content = new Scanner(mFile).useDelimiter("\\Z").next();
return content;
}catch(Exception e) {
return "There was an error retrieving your file. The proccess returned this error:\n"+e.toString();
}
}
public boolean write(String loc, String stuff) {
File mfile = new File(loc);
try {
mfile.createNewFile();
FileOutputStream f = new FileOutputStream(mfile);
OutputStreamWriter f2 = new OutputStreamWriter(f);
f2.append(stuff);
f2.close();
f.close();
} catch(IOException e) {
return false;
}
return true;
}
public void append(String filename, String content) {
write(filename, read(filename)+content);
}
}
我希望能够做的另一件事是通过com.app.importer包提供一个完全不同的应用程序
我怎么能做像
这样的事情import com.app.importer;
importerAppsMethod();
我在stackoverflow上发现了一些帖子,但它们没有帮助。
Importing my custom class and calling it's method?
还有一些,我搜索过,找不到任何适合我的东西。任何帮助表示赞赏
答案 0 :(得分:2)
我正在对@ishmaelMakitla发表评论intocan answer。
执行类似filetools.write(“/ sdcard / file.txt”,“something”)的操作; - 您需要将write方法声明为static。例如:public static boolean write(String loc,String stuff)。如果您想要类似的行为,则可能必须对所有其他方法执行相同的操作。这是你在找什么?