📜  用于创建新文件的Java程序

📅  最后修改于: 2022-05-13 01:55:28.649000             🧑  作者: Mango

用于创建新文件的Java程序

File 是一个抽象的路径,它没有物理存在。只有在“使用”该文件时,才会命中底层物理存储。当文件被间接创建时,抽象路径被创建。该文件是一种方式,其中数据将根据需要存储。

主要,为了创建一个新文件,使用了内置文件和函数,这些文件和函数肯定会在这里抛出异常,以确保安全。所以为了处理它,我们将使用异常处理技术。在这里,我们将使用其中一种已知的 as-try-catch 块技术。

其次,额外的工作只是我们将导入我们将为其导入文件类的文件类。

语法:导入文件库或类

import java.util.File ;

语法:创建一个新文件

File object_name = new File(Directory)

语法:指定目录 在不同的操作系统中是不同的(假设Java文件在桌面上创建的名为'Folder'的文件夹中)

在 Linux 和 Mac 中

/Users/mayanksolanki/Desttop/Folder/

在 Windows 中:使用 '\\' 代替 '/' 来转义 '\'字符。所以访问相同的目录

\\Users\\mayanksolanki\\Desktop\\Folder\\

有两种标准方法可以直接在 File 类的帮助下创建新文件,或者通过在这两种方法中创建文件对象来间接在 FileOutputStream 的帮助下创建新文件。

  • 通过使用文件类
  • 通过使用 FileOutputStream 类

File Class

FileOutputStreamClass

It is a class which is just a handle for  It is an output stream that can be written to FileOutputStream JavaDoc
Method: File.createNewFile()

Method: FileOutputStream 

Example: echo > myFile.txt

It is used for those objects which are not having physical existence It is used for those objects which are already existing

这两个类都提供了一些主要用于对文件进行操作的方法。例如,创建、写入、比较两个路径名、检查特定文件是否存在等等。要理解这个主题,首先考虑两种方法的一个例子。

方法一:使用 File 类创建一个新文件

Java
// Java Program to create new file using File class
 
// Importing new files
import java.io.File;
import java.io.BufferedReader;
 
// Importing as it converts bits to strings
import java.io.InputStreamReader;
 
public class GFG {
 
    // Main Driver Method
    public static void main(String args[])
    {
        // Creating New File via function
        GFG gfg = new GFG();
        gfg.newFile();
    }
 
    // Function To Make New File
    public void newFile()
    {
        String strPath = "", strName = "";
 
        // Try-catch Block
        try {
 
            // Creating BufferedReadered object
            BufferedReader br = new BufferedReader(
                new InputStreamReader(System.in));
            System.out.println("Enter the file name:");
 
            // Reading File name
            strName = br.readLine();
            System.out.println("Enter the file path:");
 
            // Reading File Path
            strPath = br.readLine();
 
            // Creating File Object
            File file1
                = new File(strPath + "" + strName + ".txt");
 
            // Method createNewFile() method creates blank
            // file.
            file1.createNewFile();
        }
 
        // Try-Catch Block
        catch (Exception ex1) {
        }
    }
}


Java
// Java Program to create new file
// using FileOutputStream class
 
// Importing File Classes
import java.io.FileOutputStream;
 
// Importing BuffferedReader Class for taking input
import java.io.BufferedReader;
 
// Importing as it converts bits to strings
import java.io.InputStreamReader;
 
// Function Helping Create New File
public class GFG {
 
    // Main Driver Method
    public static void main(String args[])
    {
        // Creating File Object
        GFG gfg = new GFG();
        gfg.newFile();
    }
 
    // Function To Create A New File
    public void newFile()
    {
        String strFilePath = "", strFileName = "";
 
        // Try-Catch Block
        try {
 
            // Creating BufferClass Object
            BufferedReader br = new BufferedReader(
                new InputStreamReader(System.in));
            System.out.println("Enter the file name:");
 
            // Asking file name from User
            strFileName = br.readLine();
            System.out.println("Enter the file path:");
 
            // Asking file path from User
            strFilePath = br.readLine();
 
            // Creating Object of FileOutputStream Class
            FileOutputStream fos = new FileOutputStream(
                strFilePath + "" + strFileName + ".txt");
        }
 
        // Try-Catch Block
        catch (Exception ex1) {
        }
    }
}


输出:

Name of file to be added                    : newFile.txt
Directory where file is to be added         : /Users/mayanksolanki/Desktop/Folder/

Added fie name            : newFile.txt
Added file name directory : /Users/mayanksolanki/Desktop/Folder/

解释:

  1. 要使用Java语言创建新文件,此处使用“File”类。 “BufferedReader”和“InputStreamReader”这两个类都用于从 用户作为输入。这些类位于“Java.io”包内。因此,要使用这些类,必须在程序开始时导入这些类。
  2. 这里创建了类,即“GFG”。在该类中定义了“main()”方法,从该方法开始执行。
  3. “main() ”方法内部创建了类的对象。这个对象用来调用“ newFile() ”方法。
  4. main()方法之外,声明了newFile()方法,该方法涵盖了从用户获取输入并根据输入创建文件的代码。
  5. 由于文件有自己的名称和路径,因此有必要为文件(我们要创建的文件)和文件的路径(创建文件的位置)提供名称。在这一行中,声明了两个空字符串,即strName、strPath。 “strName 和 strPath 用于存储文件的名称和路径,当用户提供此信息时。
  6. 为了将用户的文件名和路径作为输入,这里使用了 BufferedReader 类和 InputStreamReader 类。 BufferedReader “br”的对象对于获取用户给出的输入值很有用。
  7. 此行打印一些文本以向用户提供指示,例如“输入文件名:”。使用“ println() ”函数打印文本。
  8. 这里“ readLine() ”方法用于获取输入并将其存储在 strName 和 strPath 中。
  9. 这里创建了 File 类的对象,并将文件路径和名称作为参数提供给构造函数。在这行代码中,“.txt”是文件的格式。您可以根据需要更改它。 File 类的对象是调用其类中提供的方法所必需的。
  10. 这里“ createNewFile() ”方法是在 File 类对象的帮助下调用的。此方法在给定的目录路径上创建一个空白文件。
  11. 最后,由“try{}”块包围。因为像readLine()createNewFile()方法会产生异常。所以为了处理那个异常 try,catch 被使用。

方法二:使用 FileOutputStream 类创建一个新文件

Java

// Java Program to create new file
// using FileOutputStream class
 
// Importing File Classes
import java.io.FileOutputStream;
 
// Importing BuffferedReader Class for taking input
import java.io.BufferedReader;
 
// Importing as it converts bits to strings
import java.io.InputStreamReader;
 
// Function Helping Create New File
public class GFG {
 
    // Main Driver Method
    public static void main(String args[])
    {
        // Creating File Object
        GFG gfg = new GFG();
        gfg.newFile();
    }
 
    // Function To Create A New File
    public void newFile()
    {
        String strFilePath = "", strFileName = "";
 
        // Try-Catch Block
        try {
 
            // Creating BufferClass Object
            BufferedReader br = new BufferedReader(
                new InputStreamReader(System.in));
            System.out.println("Enter the file name:");
 
            // Asking file name from User
            strFileName = br.readLine();
            System.out.println("Enter the file path:");
 
            // Asking file path from User
            strFilePath = br.readLine();
 
            // Creating Object of FileOutputStream Class
            FileOutputStream fos = new FileOutputStream(
                strFilePath + "" + strFileName + ".txt");
        }
 
        // Try-Catch Block
        catch (Exception ex1) {
        }
    }
}


解释:

在里面 第二个例子, 文件类不用于创建 以编程方式新建文件。

  1. 要使用Java语言创建新文件,这里使用“FileOutputStream”类,“BufferedReader”和“InputStreamReader”都用于从用户获取文件名和路径作为输入。这些类位于“Java.io”包内。所以要使用这些类,有必要在程序开始时导入它们。
  2. 创建的类即“GFG”。在该类中定义了“main()”方法,从该方法开始执行。
  3. 在“main()”方法内部创建了类的对象。这个对象用来调用“newFile()”方法。
  4. 在 main() 方法之外,声明了 newFile() 方法,该方法涵盖了从用户获取输入并根据输入创建文件的代码。
  5. 在这一行中,声明了两个空字符串,即strFileName、strFilePath。 “strFileName 和 strFilePath 用于存储文件的名称和路径,当用户提供此信息时。
  6. 为了将用户的文件名和路径作为输入,这里使用了 BufferedReader 类和 InputStreamReader 类。 BufferedReader “br”的对象对于获取用户给出的输入值很有用。
  7. 此行打印一些文本以向用户提供指示,例如“输入文件名:”。使用“println()”函数打印文本。
  8. 这里的“readLine()”方法用于获取输入并将其存储在 strFileName 和 strFilePath 中。
  9. 这里创建了 FileOutputStream 类的对象,并将文件路径和名称作为参数提供给构造函数。在这行代码中,“.txt”是一种文件格式。您可以根据需要更改它。 FileOutputStream 类的对象是调用其类中提供的方法所必需的。例如,如果用户想以编程方式在新创建的文件中存储一些文本,那么 write() 方法会很有帮助。
  10. 最后,由“try{}”块包围。因为, readLine() 方法会产生异常。因此,为了处理该异常 try,使用了 catch 块。

输出:它将与前一个相同,因为只是创建新文件的方法更改了文件名的其余部分,并且添加它的目录保持不变。

Added fie name            : newFile.txt
Added file name directory : /Users/mayanksolanki/Desktop/Folder/