好吧,我是Java的新手,我正在尝试开发一个应用程序来自学如何使用这门语言。
我一直在复制和粘贴相同的几行代码,我知道有一种方法可以将其合并到一个函数中,但无法完全弄清楚。
FileOutputStream fout4 = openFileOutput("building1hourly.txt", MODE_WORLD_READABLE);
OutputStreamWriter osw4 = new OutputStreamWriter(fout4);
osw4.write("" +iHourlyAfter);
osw4.flush();
osw4.close();现在有没有什么方法可以让我这样做呢?
public void writerFunction("What to write to file", "name stream", "name writer", "MODE"){insert above code here}发布于 2011-03-29 09:31:30
是的,绝对:
public void writeToFile(String fileName, String contents, int mode) throws IOException {
FileOutputStream fout = openFileOutput(fileName, mode);
OutputStreamWriter osw = new OutputStreamWriter(fout);
osw.write(contents);
osw.flush();
osw.close();
}发布于 2011-03-29 09:38:59
首先,到目前为止,你做得很好。学习编程就像学习数学一样(除了更多乐趣),你可以在书中读到任何你想要的东西,但直到你实践了概念,你才能真正理解概念。你这样做是对的。
现在,回答您的问题:是的,您可以将写入文件的过程封装在一个函数中。让我们称它为writeToFile。您希望通过向其发送参数来“调用”此函数。参数是函数执行其工作所需的信息。
函数有两个方面:声明和调用。就像在数学中一样,你可以定义一个函数f(x),在这个函数中f做一些事情。例如:假设我有一个函数f(x) = 2x - 4。这个等式就是我们所说的函数声明,因为我们定义的是f所做的事情,而您定义的是它接受的参数,即单值x。然后,您希望将该函数应用于某个值x,因此可以执行类似于:f(4)的操作。这是函数调用。您正在调用或调用函数,并将4作为参数发送。调用函数的代码称为调用者。
让我们从要构建的函数的声明开始:
public void writeToFile (String data, String fileName)
此函数在其签名中定义了两个参数;它需要一个包含您将写入文件的data的String,以及我们将向其写入data的fileName。void表示此函数不会向调用者返回任何数据。
完整的函数,您在帖子中提供了它的主体:
public void writeToFile (String data, String fileName){
FileOutputStream fout4 = openFileOutput(fileName, MODE_WORLD_READABLE);
OutputStreamWriter osw4 = new OutputStreamWriter(fout4);
osw4.write("" +iHourlyAfter);
osw4.flush();
osw4.close();
}现在,您将希望调用此函数,或者从代码中的其他位置调用此函数。您可以这样做:
writeToFile("stuff I want to write to a file", "myFile.txt");https://stackoverflow.com/questions/5466890
复制相似问题