H
Hansi
Gast
Hallo,
ich bin dabei eine Applikation zu schreiben, die verschieden Handlungen (Fehlermeldungen) in eine Text File speichert.
Nun ich habe da allerdings ein Problem mit den Streams, es wird immer alles ünerschrieben, und ich versteh nicht wieso und finde nicht raus wie ich es dahinter schreiben kann...
Also hier ist mal ein Code auszug:
Ich würde mich sehr freuen über hilfe, meiner meinung nach müsste output.seek( output.length() ); den Kursor auf die letzte Zeile setzen :S
mfg
Hansi
ich bin dabei eine Applikation zu schreiben, die verschieden Handlungen (Fehlermeldungen) in eine Text File speichert.
Nun ich habe da allerdings ein Problem mit den Streams, es wird immer alles ünerschrieben, und ich versteh nicht wieso und finde nicht raus wie ich es dahinter schreiben kann...
Also hier ist mal ein Code auszug:
Code:
package gaimFootprintingV1;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.text.DateFormat;
import java.util.Date;
public class gaim
{
public static void main(String[] args)
{
// Name des Users wird per parameter übergeben
String name=args[0];
Date now = new Date();
DateFormat ds = DateFormat.getTimeInstance(); // Time
DateFormat df = DateFormat.getDateInstance(); // Date
String s = df.format(now); // Date
String t = ds.format(now); // Time
String geloogter=name + " " + s+ " " +t;
System.out.println(geloogter);
for(int j=0;j<12;j++)
{
boolean exists = (new File("logg.txt")).exists();
if (exists)
{
// File or directory exists
// text adden
try
{
RandomAccessFile output = null;
//BufferedWriter out = new BufferedWriter(new FileWriter("logg.txt"));
output = new RandomAccessFile( "logg.txt", "rw" );
output.seek( output.length() );
output.writeBytes(geloogter+"\n");
output.close();
}
catch (IOException e)
{
}
}
else
{
// File or directory does not exist
// file erstellen dann text adden
try {
File file = new File("logg.txt");
// Create file if it does not exist
boolean success = file.createNewFile();
if (success)
{
// File did not exist and was created
BufferedWriter out = new BufferedWriter(new FileWriter("logg.txt"));
out.write(geloogter);
out.write("\nlala1\n");
out.close();
}
else
{
// File already exists
BufferedWriter out = new BufferedWriter(new FileWriter("logg.txt"));
for(int i=0;i<22;i++)
{
out.write(geloogter);
out.write("\nlala2\n");
out.close();
}
}
}
catch (IOException e)
{
};
}
}
}
}
Ich würde mich sehr freuen über hilfe, meiner meinung nach müsste output.seek( output.length() ); den Kursor auf die letzte Zeile setzen :S
mfg
Hansi