Vector in Datei schreiben

Status
Nicht offen für weitere Antworten.

duddel123

Aktives Mitglied
hi Leute,

ich sammle ständig logmessages in einem vector namens logs!
Durch
Code:
 Log.getlogs();
kann auf ihn zugegriefen werden.

per
Code:
public class WriteData {
	
	WriteData(){
		
	}

	 public static void write() throws FileNotFoundException, IOException{
        ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("c:\\log.txt"));
        out.writeObject(Log.getlogs());
        out.close();
       }
        


    
}

möchte ich nun den Inhalt einfach ausgeben!
Den Vector habe ich vorher initialisiert,daran kann es wohl nicht liegen!

Ihr noch der error code
Code:
java.io.NotSerializableException: DataLog.LogMessage
	at java.io.ObjectOutputStream.writeObject0(Unknown Source)
	at java.io.ObjectOutputStream.writeArray(Unknown Source)
	at java.io.ObjectOutputStream.writeObject0(Unknown Source)
	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
	at java.io.ObjectOutputStream.defaultWriteObject(Unknown Source)
	at java.util.Vector.writeObject(Unknown Source)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)
	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
	at java.io.ObjectOutputStream.writeObject0(Unknown Source)
	at java.io.ObjectOutputStream.writeObject(Unknown Source)
	at DataLog.WriteData.write(WriteData.java:13)
	at AMSFenster.actionPerformed(AMSFenster.java:93)
	at java.awt.Button.processActionEvent(Unknown Source)
	at java.awt.Button.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

hat jemand vielleicht eine kleine Idee!?!?

g duddel123
 
R

Roar

Gast
um ein objekt zu serialisieren muss es auch serialisierbar sein. spirch: deine klassen die du serialisieren willst müssen das interface Serializable implementieren.
 

duddel123

Aktives Mitglied
mir stellt sich ja noch die Frage on man es überhaupt so machen muss!
braucht man denn unbedingt ein Objectdataoutputstream?
 
R

Roar

Gast
du könntest deinen log auch als plain text oder xml abspeichern. wie du es machst ist dir überlassen...
 

dotlens

Top Contributor
ein objectoutputstream hat den Vorteil, dass du das Objekt in einem andern Progi wieder holen kannst.
Wenn du das nicht benötigst würd ich einfach einen String in die Datei schreiben, und nicht das ganze Objekt
 

duddel123

Aktives Mitglied
o.k. implements Serializable hat geholfen!
Aber, ich bin der Meinung das man das auch ohne Objekt handlen könnte!
Leider bin ich mit vectoren noch anfänger, ist es den überhaupt möglich den vector in einen String zu verwandeln?!??


danke bis hierhin
 

duddel123

Aktives Mitglied
hi leute,

wie gesagt das mit dem interface hat geklappt,
allerdings bei der Ausgabe in die Datei, steht neben meinem text "DAS HIER HABE ICH IN DEN VECTOR GESCHRIEBEN" noch einiges anderes! Hängt das mit dem Objekt zusammen??


¬í sr java.util.VectorÙ—}[€;¯ I capacityIncrementI elementCount[ elementDatat [Ljava/lang/Object;xp ur [Ljava.lang.Object;�ÎXŸs)l xp
sr DataLog.LogMessage4Hi‹ÙÐUI L messaget Ljava/lang/String;L timeq ~ xpt +DAS HIER HABE ICH IN DEN VECTOR GESCHRIEBENt pppppppppx



g+d duddel123
 
R

Roar

Gast
bei der serialisierung werden alle felder deines objekts und des Vectors (die nicht als transient deklariert wurden) in die datei geschrieben, inlkusive ein bisschen overhead.
 

duddel123

Aktives Mitglied
was würdest du nun vorschlagen?

von dem serialisieren abstand nehmen und den vector in einen string konvertieren?
 
R

Roar

Gast
einen vektor in einen string konvertieren geht erstmal nicht ;)
was wilslt du denn machen? willst du den log als normalen text abspeichern? dann musst du dir alle elemente aus deinem vector holen und einzlen jeden log eintrag per (Buffered)FileWriter in eine datei schrieben.
ansonsten ist noch xml zu empfehlen, aber das isn stück länger das zu machen, dafür wiederverwendbarer...
 

duddel123

Aktives Mitglied
Roar hat gesagt.:
willst du den log als normalen text abspeichern? dann musst du dir alle elemente aus deinem vector holen und einzlen jeden log eintrag per (Buffered)FileWriter in eine datei schrieben.
.

ja ich möchte nur normalen text speichern und dann auslesen! XML wäre wohl "mit Kanonen auf Spatzen" :wink:

Ich habe eben nach vector auslesen hier gesucht aber nix gefunden, hat du vielleicht noch zum SChluss nen Link dafür!

Dann gebe ich auch wieder ruhe :lol:
 
R

Roar

Gast
Vector#size() und get(int index) und eine for schleife. das soltle weiterhelfen ;)
 

duddel123

Aktives Mitglied
sorry bins doch noch mal,

gesagt getan
Code:
	 public static void write() throws FileNotFoundException, IOException{
	 BufferedWriter out = new BufferedWriter(new FileWriter("c:\\log.txt"));		
	 	for(int i=0; i<=Log.logs.size();i++){
	 		out.write((char[]) Log.logs.get(i));	 	

	 	}
        out.close();
	 
        

}
gibt leider doch noch das hier aus!

Code:
java.lang.ClassCastException
	at DataLog.WriteData.write(WriteData.java:25)
	at AMSFenster.actionPerformed(AMSFenster.java:93)
	at java.awt.Button.processActionEvent(Unknown Source)
	at java.awt.Button.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Falscher Ansatz?
 

duddel123

Aktives Mitglied
dotlens hat gesagt.:
was gibst du mit der get() methode zurück?

ööh ich hoffe das Element an der Stelle des Indexes(i), nicht??
Code:
 out.write((char[]) Log.logs.elementAt(i));

bringt den gleichen Fehler!
 
R

Roar

Gast
get liefert dir doch eine instanz einer LogMessage zurück!? das kannst du nicht einfach in einen char[]casten weil eine LogMessage kein char array ist sondern ein objekt. caste das objekt in eine LogMessage (oder wie dein objekt heißt was du dadrin gespeichert hast) und wenn du deine LogMessage hast, dann bau da eine getter methode ein die dir den text zurück gibt.
 

Sky

Top Contributor
Zeile 5:
Code:
 String s = (String) Log.logs.get(i); // s sollte besser noch vor der Schleife definiert werden.
 out.write(s,0,s.length());
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Vector Strings in Array splitten Allgemeine Java-Themen 6
G Fehler mit Vector Allgemeine Java-Themen 3
M String Array Vector komprimieren und verschicken Allgemeine Java-Themen 3
P Vectorelemente in einen anderen Vector kopieren Allgemeine Java-Themen 12
U Vector aus Oberklasse spezialisieren Allgemeine Java-Themen 2
R Vector in JList Allgemeine Java-Themen 11
M Cast double[]-->Object[] oder Vector<double[]> Allgemeine Java-Themen 3
R Threads korrekte Synchronisation bei Vector und ArrayList Allgemeine Java-Themen 6
H Index Out of Bounds bei Vector Allgemeine Java-Themen 4
H Java Vector Frage Allgemeine Java-Themen 9
E NetBeans Vector durch ArrayList ersetzen Allgemeine Java-Themen 4
C Vector/Point-Problem Allgemeine Java-Themen 3
M Buffer-Vector einzeln und zusammen synchronisieren Allgemeine Java-Themen 4
B Suchalgorithmus der Klasse Vector Allgemeine Java-Themen 5
X Vector Allgemeine Java-Themen 3
S 2D Vector speziell ausgeben. Allgemeine Java-Themen 2
S Vector in Vector gespeichert, wie greift man darauf zu? Allgemeine Java-Themen 3
C Swing JTable Vector aus DB adden Allgemeine Java-Themen 3
R Vector.clear() oder neu initialisieren Allgemeine Java-Themen 3
S vector & strings Allgemeine Java-Themen 26
X Vector in Intervall-Menge umwandeln Allgemeine Java-Themen 4
D Array oder Vector in Enum Deklarieren Allgemeine Java-Themen 3
J Erweiterte For-Schleife mit Vector Allgemeine Java-Themen 5
G JComponent in Vector - wie klonen? Allgemeine Java-Themen 7
V Performancefrage int-Vector/Stack Allgemeine Java-Themen 10
N HashMap<String,Vector<String>> a = new HashMap<String,Vector<String>>(); Allgemeine Java-Themen 4
H GUI: RectangleDrawer - zu viele Elemente im Vector für die paint-Methode Allgemeine Java-Themen 6
S JList in Vector Allgemeine Java-Themen 3
I Vector mit Objekten sortieren,Videos mit JMF wiedergeben Allgemeine Java-Themen 6
MQue Vector<..> nicht verwenden Allgemeine Java-Themen 4
H Vector<Character> zu char[] castern Allgemeine Java-Themen 2
T Element aus Vector entfernen Allgemeine Java-Themen 4
Spot84 Vector nach Ressourcetyp sortieren Allgemeine Java-Themen 4
M get Funktion von Vector Allgemeine Java-Themen 4
N wie greife ich auf hashmap in vector zu Allgemeine Java-Themen 9
V NullPointerException bei Vector Allgemeine Java-Themen 2
E einfache Frage zu Vector Allgemeine Java-Themen 8
K Serialisierung von Hashmap in Vector Allgemeine Java-Themen 3
G Vector beim Initialisieren befüllen Allgemeine Java-Themen 4
G Vector addAll Allgemeine Java-Themen 5
B sorteiren von Datein nach Zeitstempel in einem Vector Allgemeine Java-Themen 5
W [solved] Vector sortieren (Collection / Comparable?) Allgemeine Java-Themen 7
MQue Vector Allgemeine Java-Themen 7
F Vector in eine Datenbank speichern? Allgemeine Java-Themen 3
P Vector auf JTree Allgemeine Java-Themen 6
P dynamisches Array / Vector Allgemeine Java-Themen 2
P JTable/Vector Allgemeine Java-Themen 5
T Vector und remove? Allgemeine Java-Themen 13
T Vector in JAVA ? Allgemeine Java-Themen 10
P Vector in vielen Klassen Allgemeine Java-Themen 21
MQue Vector implementieren Allgemeine Java-Themen 2
MQue Vector<State> Allgemeine Java-Themen 2
O hilfe bei Vector frage Allgemeine Java-Themen 6
F Synchronisation + Vector/ArrayList/LinkedList Allgemeine Java-Themen 7
Z Elemente in Vector nach Häufigkeit sortieren. Allgemeine Java-Themen 13
H java.util.Vector langsam ? Allgemeine Java-Themen 5
H Vector<T>[] vecs = new Vector<T>[10]; geht nicht Allgemeine Java-Themen 2
N Java API java.util.vector Allgemeine Java-Themen 3
G Vector erweitern Allgemeine Java-Themen 4
S Vector sortieren nach Objekt-Info? Allgemeine Java-Themen 9
A Probleme mit Vector Allgemeine Java-Themen 6
M Vergleich im geordeten Vector und Methodenaufruf Allgemeine Java-Themen 2
J Vector - Wert ersetzen Allgemeine Java-Themen 14
J Vector - Boolean Allgemeine Java-Themen 24
M Vector zu einem byte[] Allgemeine Java-Themen 5
J Vector<Shape> Speichern [gelöst] Allgemeine Java-Themen 11
Y Array mit ID in Vector Allgemeine Java-Themen 6
T Vector <-> double Allgemeine Java-Themen 4
T ArrayList bzw. Vector per set-Methode? Allgemeine Java-Themen 3
T ArrayList oder Vector als Parameter? Allgemeine Java-Themen 7
M Vector add() unchecked? Allgemeine Java-Themen 5
M Probleme und Zeitdruck: Kunden-DB (Vector) Allgemeine Java-Themen 13
T Vector Array Allgemeine Java-Themen 5
M Kunden-DB mit Vector Allgemeine Java-Themen 9
J Vector sortieren Allgemeine Java-Themen 3
M Vector - contain Allgemeine Java-Themen 13
C String und char[] / String[] und Vector Allgemeine Java-Themen 21
N Vector -> 2Diminsonaler Array Allgemeine Java-Themen 10
N Alledateien in einem Ordner in ein Vector speichern Allgemeine Java-Themen 19
K Object nach Vector konvertieren Allgemeine Java-Themen 3
Z ResultSet in Array oder Vector schreiben! Allgemeine Java-Themen 2
C vector von vector sortieren Allgemeine Java-Themen 4
D Vector in String Allgemeine Java-Themen 5
J Von Collection zu vector Allgemeine Java-Themen 5
I Vector serialisieren: StackOverflow Allgemeine Java-Themen 13
H Vector in ein File-Array umwandeln Allgemeine Java-Themen 2
J User Klasse in den Vector, Object Klasse wieder raus... Allgemeine Java-Themen 4
K vector, synchronized und mehrere methoden Allgemeine Java-Themen 3
kodela StatusBar-Anzeigen auch in Log-Datei ausgeben Allgemeine Java-Themen 3
G Maven Projekt JAR-Datei Allgemeine Java-Themen 6
E XML - Datei Darstellung in IntelliJ als Baum Allgemeine Java-Themen 2
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
D Erste Schritte Mp3 Datei kann nicht von der Festplatte geöffnet werden - mit ChatGPT erstellt Allgemeine Java-Themen 7
J Filenotfoundexception obwohl Datei existiert Allgemeine Java-Themen 6
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
S .exe Datei/Programm auslesen? Allgemeine Java-Themen 2
E Datei verschoben Event Allgemeine Java-Themen 3
D Datei mit "Kohsuke GitHub API" in Repository hochladen Allgemeine Java-Themen 2
S Bookmark HTML Datei einlesen, alle Links erhalten und manche editieren..? (aktuell JSoup) Allgemeine Java-Themen 4
melaniemueller Einzelne Zeile aus einer txt Datei in einem String speichern Allgemeine Java-Themen 12

Ähnliche Java Themen

Neue Themen


Oben