我需要编写一个程序,在其中运行一组指令并在目录中创建一个文件。一旦文件被创建,当相同的代码块再次运行时,它不应该运行同一组指令,因为它之前已经被执行过,在这里该文件被用作防护。如何做功能风格的文件创建和操作?
var Directory: String = "Dir1"
var dir: File = new File("Directory");
dir.mkdir();
var FileName: String = Directory + File.separator + "samplefile" + ".log"
val FileObj: File = new File(FileName)
if(!FileObj.exists())
// blahblah
else
{
// set of instructions to create the file
}
当程序运行开始,该文件将不存在,所以它应该运行的指令集在else
,并创建文件,并在第一次运行之后,第二次运行应该因为退出该文件存在。
问题是我不明白new File
,并且当文件被创建?我应该使用file.CreateNewFile
吗?另外,如何使用case
以功能风格编写此代码?
三个小问题,与问题无关。尊重Scala命名约定是个好主意:使用'var directory'而不是'var Directory'等(参见[Scala样式指南](http://docs.scala-lang.org/style/))。你应该避免在你可以使用'val'的地方使用'var':使用'val Directory'而不是'var Directory'。最后,最好避免将路径名连接为字符串,并使用类File的其他构造函数,如下所示:'val directory = new File(“Dir1”); val file = new File(directory,“samplefile.log”)' - 这样,你不必担心分隔符。 – 2014-10-06 14:48:28