CRUD FILE
Jika sebagai media penyimpanan selama ini yang biasa digunakan adalah database, maka kali ini
akan dijelaskan bagaimana memanfaatkan file sebagai media penyimpanan. Jika dibandingkan
dengan database, otomatis database jauh lebih baik dari file karena jika menggunakan database,
perintah dieksekusi oleh database tersebut, sedangkan jika menggunakan file, maka eksekusi
dilakukan dengan pemrogaman yang dibuat. Begitu juga dengan penggunaan memory, Jika
menggunakan database, maka memory yang disiapkan adalah sesuai dengan data yang dipanggil
dari database saja, sedangkan menggunakan file, maka semua isi file harus terlebih dahulu disimpan
kedalam memory walaupun data yang berada file tidak seluruhnya dibutuhkan.
1. Buat Folder
Sebelum membuat file, buat sebuah folder terlebih dahulu. Silahkan copy source code berikut
Folder yang akan dibuat terlebih dahulu dicek, apakah sudah ada atau belum, jika belum ada maka
buat sebuah folder sesuai dengan nama yang diberikan dari void Main(lihat point 6)
2. Buat File
public static void buatFile(String namaFolder, String namaFile) {
File file = new File("src/" + namaFolder + "/" + namaFile);
try {
//perintah untuk membuat file pada java
file.createNewFile();
} catch (IOException ex) {
System.out.println("Membuat File Gagal : " + ex.toString());
}
}
Dari void Main akan dikirim dua buah parameter, yaitu nama folder dan nama file, jika sesuai maka akan dibuat
sebuah file dengan ketentuan nama file yang dikirim dan bertempat pada folder yang dikirim juga.
Pada method ini akan menerima tiga buah parameter yaitu, nama folder, nama file dan teks yang akan
ditambahkan pada file. Perlu diperhatikan, jika pada file sudah ada teks, maka teks yang diterima akan
ditambahkan pada belakang teks yang ada pada file
try {
String barisTeks;
bufferedReader = new BufferedReader(new FileReader("src/" +
namaFolder + "/" + namaFile));
while ((barisTeks = bufferedReader.readLine()) != null) {
teksDariFile = teksDariFile + barisTeks;
}
} catch (IOException e) {
System.out.println("Gagal baca file :" + e.toString());
} finally {
try {
if (bufferedReader != null) {
bufferedReader.close();
}
} catch (IOException ex) {
System.out.println("Gagal Close File : " + ex.toString());
}
}
Method ini akan menerima nama folder dan nama file, dengan menentukan arah file maka bisa dilakukan operas
membaca file. Teks yang berada pada file akan ditampilkan dengan menggunakan perintah System.out.println().
5. Hapus File
public static void hapusFile(String namaFolder, String namaFile) {
File file = new File("src/" + namaFolder + "/" + namaFile);
file.delete();
}
Dengan menerima nama folder dan nama file, maka diarahkan kepada file yang ingin dihapus,
sehingga file akan terhapus
1 import java.io.BufferedReader;
2 import java.io.BufferedWriter;
3 import java.io.File;
4 import java.io.FileReader;
5 import java.io.FileWriter;
6 import java.io.IOException;
7
8 public class OperasiFile {
9
10 public static void main(String[] args) {
11 String namaFolder = "FolderPemrograman";
12
13 String namaFile = "BelajarJava.txt";
14
15 //membuat folder folder
16 buatFolder(namaFolder);
17
18 //membuat file
19 buatFile(namaFolder, namaFile);
20
21
22 //menambah teks ke dalam file
23 String teks = "Ini adalah teks yang dimasukkan ke dalam file";
24 menambahkanTeksKedalamFile(namaFolder, namaFile, teks);
25
26 //baca isi file
27 bacaFile(namaFolder, namaFile);
28
29 //menghapus file
30 hapusFile(namaFolder, namaFile);
31 }
32
33 public static void menambahkanTeksKedalamFile(String namaFolder, String namaFile, Stri
34
35 File file = new File("src/" + namaFolder + "/" + namaFile);
36 FileWriter fileWritter;
37 try {
38 //jika file tidak ada, maka otomatis mambuat file
39 if (!file.exists()) {
40 buatFile(namaFolder, namaFile);
41 }
42
43 fileWritter = new FileWriter(file, true);
44 BufferedWriter bufferWritter = new BufferedWriter(fileWritter);
45 bufferWritter.write(teks);
46 bufferWritter.close();
47 } catch (IOException ex) {
48 System.out.println("Append Teks Kedalam File Gagal :" + ex.toString());
49 }
50 }
51
52 public static void bacaFile(String namaFolder, String namaFile) {
53
54 BufferedReader bufferedReader = null;
55 String teksDariFile = "";
56
57 try {
58 String barisTeks;
59 bufferedReader = new BufferedReader(new FileReader("src/" + namaFolder +
60 while ((barisTeks = bufferedReader.readLine()) != null) {
61 teksDariFile = teksDariFile + barisTeks;
62 }
63
64 } catch (IOException e) {
65 System.out.println("Gagal baca file :" + e.toString());
66 } finally {
67 try {
68 if (bufferedReader != null) {
69 bufferedReader.close();
70 }
71 } catch (IOException ex) {
72 System.out.println("Gagal Close File : " + ex.toString());
73 }
74 }
75
76 System.out.println("Teks Dari File : " + teksDariFile);
77
78 }
79
80
81 public static void hapusFile(String namaFolder, String namaFile) {
82 File file = new File("src/" + namaFolder + "/" + namaFile);
83 file.delete();
84 }
85
86 public static void buatFile(String namaFolder, String namaFile) {
87 File file = new File("src/" + namaFolder + "/" + namaFile);
88 try {
89 //perintah untuk membuat file pada java
90 file.createNewFile();
91 } catch (IOException ex) {
92 System.out.println("Membuat File Gagal : " + ex.toString());
93 }
94 }
95
96 public static void buatFolder(String namaFolder) {
97 File file = new File("src/" + namaFolder);
98
99 //jika folder tidak ada, maka buat folder
100 if (!file.exists()) {
101 file.mkdirs();
102 }
103 }
104 }
ile merupakan urutan data yang digunakan untuk melakukan encode informasi digital untuk
urusan penyimpanan & pertukaran data. Sedangkan Class File merupakan langkah awal dalam
mempelajari proses input-output dengan Java, karena File merupakan objek yang mewakili path,
file, atau direktori pada harddisk. Ada tiga cara membuat objek File, yaitu :
1. Menggunakan objek string sebagai argumen yang menginformasikan path untuk file atau
direktori.
2. Menggunakan dua langkah, dimana yang pertama untuk mendefinisikan direktori dan
yang kedua untuk file.
3. Menggunakan dua argumen, dimana yang pertama adalah argumen string yang
mendefinisikan direktori, dan yang kedua adalah argumen string yang mendefinisikan nama file
Sementara itu, terdapat dua jenis stream yang digunakan untuk menulis dan membaca sebuah
file, yaitu FileInputStream digunakan untuk membaca data dari file yang merupakan turunan
langsung dari class InputStream dan FileOutputStream untuk menuliskan data ke file merupakan
turunan langsung dari class OutputStream.
Baiklah, tidak usah panjang lebar, berikut ini adalah contoh implementasi dari FileInputStream
dan FileOutputStream yang digunakan untuk menulis dan membaca file berbentuk txt
menggunakan java :
Saya menyiapkan file bentuk txt yang didalamnya terdapat teks seperti ini :
Program harus mampu membaca kedua baris teks diatas lalu ditampilkan dalam output program. Berikut
implementasinya :
01 import java.io.FileInputStream;
02 import java.io.FileNotFoundException;
03 import java.io.IOException;
04
05 /**
06 *
07
*
08
/
09 public class bacaFile {
10 public static void main(String[] args) {
11 FileInputStream input = null ;
12 int data ;
13 // Membuka File
14 try
15 {
16 input = new FileInputStream("G:/sister/bacalah.txt") ;
17
18 }catch(FileNotFoundException e)
19 {
20 System.out.println("File gak nemu");
21 }
22
23 try
24 {
25 while((data = input.read())!= -1)
26 {
27 System.out.print((char)data);
28 }
29 System.out.println();
30 }
31 catch(IOException e){
32 System.out.println(e.getMessage());
33 }
34
35 try{
36 input.close();
37
38 }
39 catch(IOException E)
40 {
41
42 }
43 }
44 }
Output dari program diatas sesuai dengan yang diharapkan, yaitu mampu menampilkan isi file txt :
Semoga pembasan singkat tentang bagaimana membaca dan menulis file txt diatas bermanfaat bagi-teman-
teman