Difference between revisions of "JAVA: Create File Baru"

From OnnoWiki
Jump to navigation Jump to search
Line 128: Line 128:
 
* Baris ini mencetak beberapa teks untuk memberikan indikasi kepada pengguna seperti "Enter the file name:". Untuk mencetak teks digunakan fungsi “println()”.
 
* Baris ini mencetak beberapa teks untuk memberikan indikasi kepada pengguna seperti "Enter the file name:". Untuk mencetak teks digunakan fungsi “println()”.
 
* Di sini method “readLine()” digunakan untuk mengambil input dan menyimpannya, dalam strName dan strPath.
 
* Di sini method “readLine()” digunakan untuk mengambil input dan menyimpannya, dalam strName dan strPath.
* Here object of the File class is created and as a parameter, the file path and name are given to the constructor. In this line of code “.txt” is a format of the file. You can change it as per need. The object of the File class is necessary to call methods provided in its class.
+
* Di sini object dari Class File dibuat dan sebagai parameter, path dan nama file diberikan kepada konstruktor. Di baris kode ini ".txt" adalah format file. Kita dapat mengubahnya sesuai kebutuhan. Objek Class File diperlukan untuk memanggil method yang disediakan di Class-nya.
* Here “createNewFile()” method is called with the help of the File class object. This method creates a blank file on a given directory path.
+
* Disini method “createNewFile()” di panggil dengan pertolongan dari File class object. Method create sebuah file kosong pada directory path yang diberikan.
* Lastly, enclosed by “try{ }” block. Because, methods like readLine() and createNewFile() methods generates exception. So to handle that exception try, the catch is used.
+
* Terakhir, di tutup dengan block “try{ }”. Karena, method seperti method readLine() dan createNewFile() menghasilkan exception. Oleh karenanya cara menangani exception try-catch digunakan.
  
 
==Method 2: Create a new file using FileOutputStream class==
 
==Method 2: Create a new file using FileOutputStream class==

Revision as of 06:36, 9 May 2022

File adalah jalur/path abstrak, tidak memiliki keberadaan fisik. Hanya ketika "menggunakan" File itulah maka penyimpanan fisik yang sebenarnya akan terkena. Ketika file dibuat secara tidak langsung, jalur/path abstrak dibuat. File adalah salah satu cara, di mana data akan disimpan sesuai kebutuhan.


Langkah untuk Create File Baru di Java

  1. Primer, untuk membuat file baru, inbuilt file dan fungsi digunakan yang juga akan menggunakan Exception supaya aman. Jadi untuk menghadapinya, kita akan menggunakan Exception Handling Techniques. Di sini, kita akan menggunakan salah satunya yang dikenal sebagai teknik block as-try-catch.
  2. Sekunder, pekerjaan tambahan hanyalah kita akan mengimpor Class File.


Sintaks: untuk mengimport file library atau class

import java.util.File ;

Sintaks: untuk create file baru

File object_name = new File(Directory)

Sintaks: Untuk menentukan direktori berbeda di sistem operasi yang berbeda (misalkan file java ada di folder bernama 'Folder' yang dibuat di desktop)

Di Linux dan Mac

/Users/mayanksolanki/Desktop/Folder/

Di Windows: ‘ \\ ‘ digunakan dan bukan ‘ / ‘ untuk karakter escape ‘ \ ‘. Maka directory yang di akses menjadi

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

Ada dua method standar untuk membuat file baru baik secara langsung dengan bantuan Class File atau tidak langsung dengan bantuan FileOutputStream dengan membuat objek file di kedua pendekatan tersebut.

  • Dengan menggunakan Class File
  • Dengan menggunakan Class FileOutputStream
File Class FileOutputStreamClass
Ini adalah Class yang akan digunakan Ini adalah output stream yang akan ditulis ke FileOutputStream JavaDoc
Method: File.createNewFile() Method: FileOutputStream
Example: echo > myFile.txt
Ini digunakan untuk object yang belum ada secara fisik Ini digunakan untuk object yang sudah ada secara fisik

Kedua Class menyediakan beberapa method yang terutama digunakan untuk melakukan operasi file. Misalnya, untuk create, write, compare dua nama path, check apakah ada file tertentu atau tidak, dan banyak lagi. Untuk memahami topik ini, pertama, pertimbangkan satu contoh untuk kedua pendekatan.

  1. Terminal Command digunakan untuk compile java code di mesin
  2. Terminal Command digunakan untuk Run java code di machine
  • javac class_name.java // For Compilation
  • java class_name // For Execution

Terminal sistem operasi Mac akan digunakan untuk implementasi dan menyediakan output untuk mengakses direktori


Directory yang digunakan: /Users/mayanksolanki/Desktop/Folder/ 

Method 1: Create file baru menggunakan Class File

// 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) {
        }
    }
}

Output:

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

Penjelasan:

  • Untuk membuat file baru menggunakan java, Class "File" digunakan di sini. Class "BufferedReader" dan "InputStreamReader" digunakan untuk membuat nama file dan path dari pengguna sebagai input. Class ini terletak di dalam paket "java.io". Jadi untuk memanfaatkan Class tersebut, perlu mengimpor Class itu di awal program.
  • Di sini Class dibuat yaitu, "GFG". Dan di dalam Class tersebut method "main()" didefinisikan dari mana eksekusi akan dimulai.
  • Di dalam method "main()" object Class dibuat. Dan object ini digunakan untuk memanggil method "newFile()".
  • Di luar method main(), method newFile() dideklarasikan yang mencakup code untuk mengambil input dari pengguna dan membuat file sesuai input.
  • Karena file memiliki nama dan path sendiri, maka perlu memberi nama untuk file (yang ingin kita buat) dan path (tempat untuk membuat file) untuk file tersebut. Pada baris ini, dua string kosong dideklarasikan yaitu, strName, strPath. “strName, dan strPath digunakan untuk menyimpan nama dan path file ketika pengguna memberikan informasi ini.
  • Untuk mengambil nama file dan path dari pengguna sebagai input, di sini digunakan Class BufferedReader dan Class InputStreamReader. Object BufferedReader “br” berguna untuk mengambil nilai input yang diberikan oleh pengguna.
  • Baris ini mencetak beberapa teks untuk memberikan indikasi kepada pengguna seperti "Enter the file name:". Untuk mencetak teks digunakan fungsi “println()”.
  • Di sini method “readLine()” digunakan untuk mengambil input dan menyimpannya, dalam strName dan strPath.
  • Di sini object dari Class File dibuat dan sebagai parameter, path dan nama file diberikan kepada konstruktor. Di baris kode ini ".txt" adalah format file. Kita dapat mengubahnya sesuai kebutuhan. Objek Class File diperlukan untuk memanggil method yang disediakan di Class-nya.
  • Disini method “createNewFile()” di panggil dengan pertolongan dari File class object. Method create sebuah file kosong pada directory path yang diberikan.
  • Terakhir, di tutup dengan block “try{ }”. Karena, method seperti method readLine() dan createNewFile() menghasilkan exception. Oleh karenanya cara menangani exception try-catch digunakan.

Method 2: Create a new file using FileOutputStream class

// Java Program to create new file
// using FileOutputStream class
  
// Importing File Classes
import java.io.FileOutputStream;
  
// Importing BufferedReader 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) {
        }
    }
}

Explanation:

In the second example, the File class is not used to create a new File programmatically.

  • To create a new file using java language, “FileOutputStream” class is used here and “BufferedReader” & “InputStreamReader” both are used to take file name and path from the user as input. These classes are located inside of “java.io” package. So to make use of those classes, it is necessary to import them at the beginning of the program.
  • Class is created namely, “GFG”. And inside that class “main()” method is defined from which execution will be started.

Inside of “main()” method object of the class is created. And this object is used to call the “newFile()” method.

  • Outside of the main() method, the newFile() method is declared which is covers code for taking input from the user and create a file as per input.

In this line, two blank strings are declared namely, strFileName, strFilePath. “strFileName and strFilePath are used to store the name and path of the file when the user gives this information.

  • To take file name and path from the user as input, here BufferedReader class and InputStreamReader class are used. The object of BufferedReader “br” is useful to take input values given by the user.
  • This line print some text to give an indication to the user like ”Enter the file name:”. To print text “println()” function is used.
  • Here “readLine()” method is used to take input and store it, in strFileName and strFilePath.
  • Here object of FileOutputStream class is created and as a parameter, file path and name are given to the constructor. In this line of code “.txt” is a format of the file. You can change it as per need. The object of FileOutputStream class is necessary to call methods provided in its class. For example, if the user wants to store some text in a newly created file programmatically then, the write() method is helpful.

Lastly, enclosed by “try{ }” block. Because, readLine() method generates exception. So to handle that exception try, catch block is used.

Output: It will be the same as the previous one because just the approach to create a new file has changed the rest of the file name and the directory where it is added remains the same.

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


Referensi