Vi posto un esempio di una classe che uso io per la lettura e la scrittura di file di testo.
Spero possa esservi utile.
Ciao
codice:
import java.io.*;
import java.util.*;
public class IOfile {
private String lettura = "";
private String testaFile = "";
private String codaFile = "";
private String uog = "";
private String nuovoFile = "";
private String TR = "";
private Vector vettore;
public IOfile(String fileI, String fileO, String fileU) {
try {
BufferedReader fileRead = new BufferedReader(new FileReader(fileI));
BufferedReader fileUog = new BufferedReader(new FileReader(fileU));
BufferedWriter fileWrite = new BufferedWriter(new FileWriter(fileO));
vettore = new Vector();
caricaVettore(fileUog);
leggi(fileRead, fileWrite);
}
catch (IOException e)
{
System.out.println(e);
}
}
public void leggi(BufferedReader fileRead, BufferedWriter fileWrite){
try {
while(fileRead.ready()){
lettura = fileRead.readLine();
if (lettura.substring(0,4).equals("DTKR")){
testaFile = lettura.substring(0,85);
codaFile = lettura.substring(91,250);
uog = lettura.substring(91,101);
nuovoFile = testaFile + ricercaVettore() + codaFile;
fileWrite.write(nuovoFile);
fileWrite.newLine();
fileWrite.flush();
}
else {
fileWrite.write(lettura);
if(fileRead.ready()){
fileWrite.newLine();
}
fileWrite.flush();
}
}
fileRead.close();
fileWrite.close();
}
catch (IOException e)
{
System.out.println(e);
}
}
public void caricaVettore(BufferedReader fileUog){
try {
while(fileUog.ready()){
vettore.add(fileUog.readLine());
}
fileUog.close();
}
catch (IOException e)
{
System.out.println(e);
}
}
public String ricercaVettore(){
String Svettore = "";
for (int i = 0; i < vettore.size(); i++) {
Svettore = (String)vettore.get(i);
if (Svettore.substring(0,10).equals(uog)){
return Svettore.substring(10,16);
}
}
return " ";
}
}