Stream, Reader, dan Writer 2
- Class File
Walaupun class File bukan merupakan class stream, ini sesuatu yag penting bahwa kita
mempelajari ini sejak class-class stream merupakan file-file yang telah dimanipulasi.
Class adalah sebuah perwakilan dari abstraksi dari file-file nyata dan nama path
direktori.
Untuk meng-instantiate sebuah object File, Anda dapat menggunakan constructor
berikut ini:
Sebuah Constructor File --->File(String pathname)
Instantiate sebuah object File dengan nama path khusus sebagai nama filenya. Nama
filenya mungkin salah satu menjadi penuh( sebagai contoh, isi dengan path yang
lengkap) atau mungkin terdiri atas namafile itu sendiri dan diasumsikan menjadi diisi
dalam direktori tersebut.
Class File menyediakan beberapa method untuk memanipulasi file dan direktori. Berikut
ini beberapa dari method-method tersebut.
contoh method:
import java.io.*;
public class FileInfoClass {
public static void main(String args[]) {
String fileName = "D:\\";
File fn = new File(fileName);
System.out.println("Name: " + fn.getName());
if (!fn.exists()) {
System.out.println(fileName + " does not exists.");
/* membuat sebuah temporary directory . */
System.out.println("Creating temp directory...");
fileName = "temp";
fn = new File(fileName);
fn.mkdir();
System.out.println(fileName +
(fn.exists()? "exists": "does not exist"));
System.out.println("Deleting temp directory...");
fn.delete();
System.out.println(fileName +
(fn.exists()? "exists": "does not exist"));
return;
}
System.out.println(fileName + " is a " +
(fn.isFile()? "file." :"directory."));
if (fn.isDirectory()) {
String content[] = fn.list();
System.out.println("The content of this directory:");
for (int i = 0; i < content.length; i++) {
System.out.println(content[i]);
}
}
if (!fn.canRead()) {
System.out.println(fileName + " is not readable.");
return;
}
System.out.println(fileName + " is " + fn.length() +
" bytes long.");
System.out.println(fileName + " is " + fn.lastModified()
+ " bytes long.");
if (!fn.canWrite()) {
System.out.println(fileName + " is not writable.");
}
}
}
- Class Node Reader
2. Class File
Contoh dasar Reader/Writer
*********dibawah ini ada 4 class dengan nama copyfile akan tetapi keempat file tersebut saling berkaitan satu sama lain *******************
import java.io.*;
class CopyFile {
void copy(String input, String output) {
FileReader reader;
FileWriter writer;
int data;
try {
reader = new FileReader(input);
writer = new FileWriter(output);
while ((data = reader.read()) != -1) {
writer.write(data);
}
reader.close();
writer.close();
} catch (IOException ie) {
ie.printStackTrace();
}
}
public static void main(String args[]) {
String inputFile = "D:/notepad/hp dea.txt";
String outputFile = "D:/notepad/coba.txt";
CopyFile cf = new CopyFile();
cf.copy(inputFile, outputFile);
}
void copy(String inputFile) {
throw new UnsupportedOperationException("Not yet implemented");
}
}
import java.io.*;
class CopyFile2 {
void copy(String input, String output) {
BufferedReader reader;
BufferedWriter writer;
String data;
try {
reader = new BufferedReader(new FileReader(input));
writer = new BufferedWriter(new FileWriter(output));
while ((data = reader.readLine()) != null) {
writer.write(data, 0, data.length());
}
reader.close();
writer.close();
} catch (IOException ie) {
ie.printStackTrace();
}
}
public static void main(String args[]) {
String inputFile = "D:/notepad/hp dea.txt";
String outputFile = "D:/notepad/coba.txt";
CopyFile cf = new CopyFile();
cf.copy(inputFile, outputFile);
}
}
import java.io.*;
class CopyFile3 {
void copy(String input, String output) {
FileInputStream inputStr;
FileOutputStream outputStr;
int data;
try {
inputStr = new FileInputStream(input);
outputStr = new FileOutputStream(output);
while ((data = inputStr.read()) != -1) {
outputStr.write(data);
}
inputStr.close();
outputStr.close();
} catch (IOException ie) {
ie.printStackTrace();
}
}
public static void main(String args[]) {
String inputFile = "D:/notepad/hp dea.txt";
String outputFile = "D:/notepad/coba.txt";
CopyFile cf = new CopyFile();
cf.copy(inputFile, outputFile);
}
}
import java.io.*;
class CopyFile4 {
void copy(String input) {
PushbackInputStream inputStr;
PrintStream outputStr;
int data;
try {
inputStr = new PushbackInputStream(new
FileInputStream(input));
outputStr = new PrintStream(System.out);
while ((data = inputStr.read()) != -1) {
outputStr.println("read data: " + (char) data);
inputStr.unread(data);
data = inputStr.read();
outputStr.println("unread data: " + (char) data);
}
inputStr.close();
outputStr.close();
} catch (IOException ie) {
ie.printStackTrace();
}
}
public static void main(String args[]) {
String inputFile = "D:/notepad/C++.txt";
CopyFile4 cf = new CopyFile4();
cf.copy(inputFile);
}
}
Selamat Mencoba :D
0 komentar: