在Java中如何使用File类创建文件?

问题描述:

我需要一些认真的概念帮助。我一直在给定的背景情况下的类,特别是这样的:在Java中如何使用File类创建文件?

我只需要了解这个类的目的是什么?我可以用它的构造函数创建一个文本文件(或任何其他类型的文件)吗?这只是为了处理文件,如果是这样,这是什么意思?

任何任何帮助将不胜感激!

谢谢

+4

你看过它的文档吗?你有没有检查过任何信息来源(书,谷歌,官方文档)? – Stultuske

+1

有一个看看这篇文章:https://stackoverflow.com/questions/6142901/how-to-create-a-file-in-a-directory-in-java –

+2

号:一'File'更像是一个表示路径,如'/ foo/bar/something.txt'。这可能存在也可能不存在(你可以使用'File.exists()'方法来检查它,你可以使用类似于'FileOutputStream'或'FileWriter'的方法来创建文件,这些文件的构造函数会将'File'的参数,并且将写入文件在所表示的路径(如果可以)。 –

您可以使用java.io.File到文件系统上创建一个文件:

File myFile = new File("myFile.txt"); 
myFile.createNewFile(); 

注意,调用构造函数不会创建文件系统上的文件。要创建一个空文件,必须调用createNewFile()方法。

File仅表示该文件的位置,而不是文件本身的抽象。它配备了操作上的路径标识文件:exists()delete()length()

你可能想要的是使用,让您的类内容到一个文件:

  • 如果你要写文字,你应该使用Writer界面。
  • 如果你写的二进制内容,你应该使用OutputStream接口。

的类FileWriterFileOutputStream分别是该FileWriter/OutputStream概念链接在一起的那些。这些类为您创建文件系统上的文件。

FileWriter myFileWriter = null; 
    File myFile = new File("myFile.txt"); 
    try { 
     // file is created on the file-system here 
     myFileWriter = new FileWriter(myFile); 

     myFileWriter.write("hello"); 
    } finally { 
     if (myFileWriter != null) { 
      myFileWriter.close(); 
     } 
    } 

可以使用File.createNewFile方法创建一个文件,或者,如果你正在使用Java 7或更高版本,使用较新的Files.createFile方法。

旧文件和新路径类的区别在于前者将引用路径与filsystem上的文件的路径混合,并且可以对其执行操作,而后者仅表示路径本身,但允许你去查询它并分析它的结构。