
Delo z
datotekami - File in RandomAccesFile
File
 |
File
je razred, s katerim lahko dobimo informacije o datoteki (velikost, pot,...),
omogoča pa tudi ustvarjanje direktorijev, preimenovanje in brisanje datotek
ter izpis vsebine nekega direktorija. |
import java.io.*;
class test {
public static void main (String argv[ ]) {
File inp;
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
String name;
int i;
try {
System.out.print("Vnesi ime datoteke: ");
name=in.readLine();
inp=new File(name); // Ustvarimo objekt file
if (inp.isDirectory()) { // je direktorij?
File[ ] files=inp.listFiles(); // spisek datotek v direktoriju
for (i=0;i<files.length;i++) {
System.out.println("File name : " + files[i].getName()); // ime datoteke
System.out.println("File path : " + files[i].getPath()); // relativna pot
System.out.println("Absolute path: " + files[i].getAbsolutePath()); // absolutna pot
System.out.println("File length : " + files[i].length() + " bytes"); // dolzina
}
}
else if (inp.exists()) { // obstaja?
System.out.println("File path : " + inp.getPath());
System.out.println("Absolute path: " + inp.getAbsolutePath());
System.out.println("File length : " + inp.length() + " bytes");
}
else
inp.mkdirs(); // naredimo direktorij
}
catch (Exception e) {
System.err.println("Exception : " + e.getMessage());
}
}
}

RandomAccessFile
 |
RandomAccessFilenam
olajša delo z pisanjem in branjem datotek. |
 |
Vsebuje
metode iz FileInputStream, FileOutputStream, DataInputStream in DataOutputStream. |
 |
Ima
še nekaj dodatnih metod, kot npr. length,
ki vrne dolžino datoteke, getfilePointer,
ki pove kje se v datoteki nahajamo, in seek
za primikanje po datoteki. |
import java.io.*;
class test {
public static void main (String argv[ ]) {
RandomAccessFile file;
int i;
try {
file=new RandomAccessFile("lalala","rw"); // odpremo za branje in pisanje
for (i=0;i<100;i++)
file.writeInt(i); // pišemo cela stevila
file.seek(12); // postavimo se na 12. bajt
while (file.getFilePointer()<file.length()) // do konca datoteke
System.out.println(file.readInt()); // beremo cela stevila
file.close(); // zapremo datoteko
}
catch (Exception e) {
System.err.println("Exception : " + e.getMessage());
}
}
}
