====== Παραδείγματα εγγραφής σε αρχείο κειμένου και δυαδικό αρχείο ======
===== Γράφοντας σε αρχεία κειμένου =====
Δείτε την παρακάτω κλάση //CopyTextFile// η οποία λαμβάνει ως είσοδο στη μέθοδο //main// τα ονόματα δύο αρχείων κειμένου και αντιγράφει τα περιεχόμενα του πρώτου στο 2ο αρχείο.
import java.io.*;
public class CopyTextFile {
public static void main(String [] args) {
if (args.length < 2) {
System.err.println("Insufficient number of arguments!");
return;
}
File readFile = new File(args[0]);
File writeFile = new File(args[1]);
if( !readFile.isFile() ) {
System.err.println("Input file does not exist or is not a regular file!");
return;
}
if( !readFile.canRead() ) {
System.err.println("Input file is not readable!");
return;
}
if( writeFile.exists() ) {
System.err.println("Output file exists! Unable to overwrite.");
return;
}
try {
String input;
BufferedReader in = new BufferedReader(new FileReader(readFile));
PrintWriter out = new PrintWriter(writeFile);
while( (input = in.readLine()) != null ) {
out.println(input);
}
out.close();
in.close();
} catch( IOException ex ) {
ex.printStackTrace();
}
}
}
===== Γράφοντας σε δυαδικά αρχεία =====
Δείτε την παρακάτω κλάση //CopyBinFile// η οποία λαμβάνει ως είσοδο στη μέθοδο //main// τα ονόματα δύο οποιονδήποτε αρχείων και αντιγράφει τα περιεχόμενα του πρώτου στο 2ο αρχείο.
import java.io.*;
public class CopyBinFile {
public static void main(String [] args) {
if (args.length < 2) {
System.err.println("Insufficient number of arguments!");
return;
}
File readFile = new File(args[0]);
File writeFile = new File(args[1]);
if( !readFile.isFile() ) {
System.err.println("Input file does not exist or is not a regular file!");
return;
}
if( !readFile.canRead() ) {
System.err.println("Input file is not readable!");
return;
}
if( writeFile.exists() ) {
System.err.println("Output file exists! Unable to overwrite.");
return;
}
try {
byte []buffer = new byte[2048];
FileInputStream in = new FileInputStream(readFile);
FileOutputStream out = new FileOutputStream(writeFile);
int read_len;
while( (read_len = in.read(buffer)) != -1 ) {
out.write(buffer, 0, read_len);
}
out.close();
in.close();
} catch( IOException ex ) {
ex.printStackTrace();
}
}
}