postaweek2011, Programming

Java, dan file I/O…

Logo Java

Saat ini gw lagi di semseter 3. Dan udah gk belajar C++ lagi. Tapi c++ udh ngasi pondasi yang cukup bwt gw mengambil tantangan berikutnya, momok bagi tiap programmer yang belajar programming, BAHASA JAVA. (bukan bahasa kejawen yg adadi jawa yak maksute)…

Java itu menarik, jika kita mau membuka pikiran bahwa semua bahasa pemrograman sama aja pada dasarnya. Meski ada beberapa hal yang bikin gw sebel, spserti fakta bahwa di Java kita gk bisa clrscr() kaya di C++, ato bahwa java gk punya fungsi goto yang fungsinya menyamai yang d C++. Tapi gpp, gw hanya perlu menghindari itu, dan screen prgram gw bakal jadi penuh karena gk ada si clrscr(). Dan satu lagi, yang bikin bingung di java itu soal class-method. Sumpah, klo bagian ini, jangan ajak gw cepet2 ngerjainnya. Ilmu gw masih cetek klo soal ini. Tp sebenernya penting, progrm bakal keliatan lebih rapi, dan tentu utk perbaikan ke depannya akan lebih gampang.

Eniwei, sekarang gw cuman mw sharing ilmu yang baru2 ini gw dapet dari kampus. Satu kemampuan dari hampir semua bhasa yaitu load file2 dari luar, seperti file plain text. Meski yang gw contohin ini masih bersifat hanya membaca dan menulis aja ke file, tapi utk kedepannya akan berguna utk load konfigurasi dari file .ini ato .conf yang kita bwt sendiri. Hokeh, here goes the codes..
import java.io.*;

class fileOperation {

	// Method 1 : MAKE FILE =============================
	public void makeFile(String namaFilePar) throws IOException {
		String namaFile = namaFilePar;
		File f = new File(namaFile);

		System.out.println("Nama file : " + namaFile + " :");
		if (f.exists())
			System.out.println("File sudah ada, operasi dihentikan.");
		else {
			System.out.println("File belum ada, membuat baru.");
			if (f.createNewFile())
				System.out.println("File berhasil dibuat");
			else
				System.out.println("File gagal dibuat!");
		}
	}

	// Method 2 : WRITE FILE =============================
	public void writeFile(String namaFilePar) throws IOException {
		String namaFile = namaFilePar;

		String teksInput;
		BufferedReader brTeks = new BufferedReader
		(new InputStreamReader(System.in));
		FileWriter fwTeks = new FileWriter(namaFile);
		BufferedWriter bwTeks = new BufferedWriter(fwTeks);

		System.out.println("---------------------------");
		System.out.println("Tuliskan isi file "+namaFilePar+" akhiri dengan string kosong <ENTER>");

		do {
			teksInput = brTeks.readLine();
			System.out.println(">> \"" + teksInput + "\"");
			bwTeks.write(teksInput + "\n");
		} while (!teksInput.equalsIgnoreCase(""));

		bwTeks.close();
		fwTeks.close();
		System.out.println("Teks telah disimpan");
	}

	// Method 3 : READ FILE =============================
	public void readFile (String namaFilePar) throws IOException {
		String namaFile = namaFilePar;

		FileReader frRead = new FileReader(namaFile);
		BufferedReader bfrRead = new BufferedReader(frRead);

		String isiFile = null;
		System.out.println("Isi file "+ namaFile +" ; ");
		System.out.println("-----------------------------------");
		while ((isiFile = bfrRead.readLine()) != null) {
			System.out.println(isiFile);
		}

		bfrRead.close();
		frRead.close();
	}

	// Method 4 : RENAME FILE =============================
	public void renameFile(String namaFilePar,String namaFileParNew) throws IOException {
		String namaFile = namaFilePar;
		String namaFileNew = namaFileParNew;

		File fRen = new File(namaFile);
		if (fRen.renameTo(new File(namaFileNew))) {
			System.out.println("Rename file "+ namaFile +" menjadi "+namaFileNew + " berhasil");
		} else {
			System.out.println("Rename gagal");
		}
	}
}

class operasiIO {
	public static void main(String args[]) throws IOException {
		int i=0;
		fileOperation fileOp = new fileOperation();

		BufferedReader bfr = new BufferedReader
		(new InputStreamReader(System.in));

		do
		{
			System.out.println("\n--------------------------\n");
			System.out.println("Menu :");
			System.out.println("1. Buat File");
			System.out.println("2. Tulis File");
			System.out.println("3. Baca File");
			System.out.println("4. Rename File");
			System.out.println("6. Keluar");
			System.out.print("Masukkan pilihan anda :");

			BufferedReader bfrMenu = new BufferedReader
			(new InputStreamReader(System.in));
			int menu = Integer.parseInt(bfrMenu.readLine());

			switch (menu) {
				case 1:
					System.out.print("Masukkan nama file : ");
					String namaFile = bfr.readLine();
					fileOp.makeFile(namaFile);
					break;

				case 2:
					System.out.print("Masukkan nama file : ");
					String namaFileEdit = bfr.readLine();
					fileOp.writeFile(namaFileEdit);
					break;

				case 3:
					System.out.print("Masukkan nama file yang ingin dimuat : ");
					String namaFileRead = bfr.readLine();
					fileOp.readFile(namaFileRead);
					break;

				case 4:
					System.out.print("Nama file asli : ");
					String nmFileAsli = bfr.readLine();
					System.out.print("Nama file baru : ");
					String nmFileRen = bfr.readLine();
					fileOp.renameFile(nmFileAsli,nmFileRen);
					break;

				case 5:
					System.exit(0);
					break;

				default:
					System.out.println("Input salah!");
			} //close case
			i++;
		} while (i>0); // kondisi do..while
	}
}

Copas ke text editor, simpen pake operasiIO.java.

Oh yak, disini gw pake menu utk mempermudah temen2 liat hasilnya gimana. Yang jelas, file yang temen2 buat bakal ditaro di tempat file .java dicompile jadi file .class. Sayah bikinnya pake 2 program, pas di Windows kerja di TextPad, di Ubuntu kerja di Geany. Utk versi JDK, saya pake yang versi 1.6.sekian.. (lupa sayah..) utk kedua mesin, baik Windows ato Ubuntu. Dan klo temen2 males copas dari sourcecode d atas, ini link utk donload file .java nya… 😀 (itu bisa di copas pake icon di pojok kanan atas source code kok, gk usah blok dulu)

Klo ada pertanyaan, ato ingin request utk sourcecode java ato cpp, jangan segan2 comment di bawah. Saya akan berusaha utk membantu, karena Programming itu menyenangkan kawan….

Iklan
Standar

4 respons untuk ‘Java, dan file I/O…’

    • ryujisan berkata:

      meski mungkin udh telat… :p

      Seingat saya, (karena ini mata kuliah smt lalu) File itu nama class yang bisa langsung dipanggil, jadi semacem global class gitu… (gk tw jg apa bener istilahnya gitu). Tempat aslinya di kelas java.io (dipanggil di bagian awal program).

      Selain File sebenernya masih banyak kelas2 lain yang bisa dipanggil dengan cara seperti diatas… bisa cari sendiri yak….! 😀

      btw, makasi kunjungannya… 😀

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

w

Connecting to %s