geht das?

Status
Nicht offen für weitere Antworten.

André B.

Bekanntes Mitglied
hallo.
ich würd mich sehr freuen, wenn jemand mir sagen könnte, ob dieser code rein theoretisch funktionieren würde oder ob es was zu verbessern gebe. danke
ps: man siehts bestimmt, aber ich sag's troztdem: die klasse is zum serialisieren gedacht.
Code:
import java.awt.Component;
import java.io.*;
import java.util.*;
import javax.swing.JFileChooser;
import javax.swing.filechooser.*;

public class fileStream
{
	private Component parent;
	
	private FileOutputStream out;
	private FileInputStream in;
	
	private ObjectOutputStream objOut;
	private ObjectInputStream objIn;
	
	private Object returnObj;
	
	private JFileChooser file;
	
	public fileStream(Component com)
	{
		this.parent = com;
		file = new JFileChooser();
	}
	
	public void showSave(Object obj)
	{
		int selected = file.showOpenDialog(parent);
		if(selected == JFileChooser.APPROVE_OPTION)
		{
			File outputFile = file.getSelectedFile();
			save(outputFile.getAbsolutePath() ,obj);
		}
	}
	
	public Object showOpen()
	{
		int selected = file.showSaveDialog(parent);
		if(selected == JFileChooser.APPROVE_OPTION)
		{
			File inputFile = file.getSelectedFile();
			returnObj = load(inputFile.getAbsolutePath());
			return returnObj;
		}
		return null;
	}
	
	private void save(String filename, Object obj)
	{
		try
		{
			out = new FileOutputStream(filename);
			objOut = new ObjectOutputStream(out);
			objOut.writeObject(obj);
			objOut.close();
		}catch(IOException e){ }
	}
	
	private Object load(String filename)
	{
		try
		{
			in = new FileInputStream(filename);
			objIn = new ObjectInputStream(in);
			returnObj = objIn.readObject();
		}
		catch(IOException e){ }
		catch(ClassNotFoundException e){ }
	return returnObj;
	}
}
 

meez

Top Contributor
Warum probierst du ihn nicht einfach aus, dann weisst du auch, dass er praktisch geht... :wink:
Sieht aber an sich ganz ok aus..
 

SebiB90

Top Contributor
meez hat gesagt.:
Warum probierst du ihn nicht einfach aus, dann weisst du auch, dass er praktisch geht... :wink:
Object hat Serializable implementiert? ich glaub das funzt nicht so ganz, ich würd den datentyp der obj variable auf Serializable setzen.
 

Jörg

Bekanntes Mitglied
ich würd den datentyp der obj variable auf Serializable setzen.

was soll das bringen? Er zwingt dann den Benutzer zum Implementieren des Serializables IFs, was auch nicht wirklich immer gut ist!
Man muss sich immer selbst ueberlegen, welche Objekte tatsaechlich serialisert werden koennen... nur das Interface 'implementieren' ist da sicherlich der falsche Weg...

BTW: Klassennamen werden nach Konvention gross geschrieben...
 
R

Roar

Gast
Jörg hat gesagt.:
ich würd den datentyp der obj variable auf Serializable setzen.

was soll das bringen? Er zwingt dann den Benutzer zum Implementieren des Serializables IFs, was auch nicht wirklich immer gut ist!
Man muss sich immer selbst ueberlegen, welche Objekte tatsaechlich serialisert werden koennen... nur das Interface 'implementieren' ist da sicherlich der falsche Weg...

nein wieso. natürlich muss er den benutzer zwingen Serializable zu implementieren. nicht serializable objekte können nicht serialisiert werden.
demnach ist das genau der richtige weg. einfach auf die intelligenz des benutzers vertrauen dass der nur serializable objekte übergibt kann schnell in die hose gehen und beim ausführn hat ma ndann den salat
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
HolyFUT Best Practice Wie geht man mit "schlechten" Projekten um? Allgemeine Java-Themen 7
S Mit Methoden kann man definieren für was <T> steht. Geht das auch irgendwie für Variablen? Allgemeine Java-Themen 12
F 2 JsonArray vergleichen, geht es auch einfacher ? Allgemeine Java-Themen 3
LimDul Hä? Lambda-Ausdruck geht, Methoden-Referenz nicht Allgemeine Java-Themen 8
LimDul Direktes return eines Array geht nicht Allgemeine Java-Themen 20
M Test geht auf Travis und mit Github Action schief aber nicht lokal Allgemeine Java-Themen 3
M Console geht nicht auf (Windows 10) Allgemeine Java-Themen 3
W Enumeration ein Array/List als Eigenschaft mitgeben - warum geht das nicht? Allgemeine Java-Themen 0
P Erste Schritte HauptFrame geht nicht Allgemeine Java-Themen 7
L Applet Applet zu JavaWebStart migrieren - simples sample geht nicht Allgemeine Java-Themen 2
KeVoZ_ Java Mail senden - geht nicht Allgemeine Java-Themen 4
K API - Wie geht das? Allgemeine Java-Themen 2
D Klassenübergreifender Befehl geht nicht Allgemeine Java-Themen 10
X Datentypen Byte geht nicht höher als 126 auch nicht mit casten? Allgemeine Java-Themen 22
J Umwandeln von URL zu File und danach kopieren geht nicht Allgemeine Java-Themen 1
M JUnit Serverseitig? Wie geht sowas? Allgemeine Java-Themen 2
G Erste Schritte Aufgabe - Geht das auch schneller ? Allgemeine Java-Themen 7
E JavaFX String-Wert geht "verloren" - ratlos Allgemeine Java-Themen 2
B Fehler beim Auslesen von Einstellungen. Zwei ähnliche Blöcke, nur eins geht. Allgemeine Java-Themen 5
H Unicode ausgeben ohne Umwandlung - geht das? Allgemeine Java-Themen 3
F Java Anwendung Remote starten geht nicht Allgemeine Java-Themen 0
M Eingabe von Arrays geht über gewünschte Anzahl hinaus Allgemeine Java-Themen 2
K print() geht nicht ohne println() Allgemeine Java-Themen 3
V 2D-Grafik BufferdImage aus gif Datei in Jar erzeugen geht nicht. Allgemeine Java-Themen 6
Fl4sh1 Autovervollständigungfenster geht nicht (eclipse) Allgemeine Java-Themen 10
P Absatz im String / Excel / /n geht nicht Allgemeine Java-Themen 2
Z Java geht nicht im Browser Allgemeine Java-Themen 5
J Laden von JAR Files geht ohne ADMIN Rechte sehr langsam Allgemeine Java-Themen 6
B Keylistener geht nicht Allgemeine Java-Themen 9
R Wie geht man mit CachedRowSet um Allgemeine Java-Themen 2
I Downloaden einer Datei geht nicht? Allgemeine Java-Themen 16
P Input/Output Ordner löschen --> geht nicht Datei --> Ja Allgemeine Java-Themen 6
G JTable mit Keylistener geht nicht Allgemeine Java-Themen 3
C Zugriff auf private Methode per reflection geht nicht mehr Allgemeine Java-Themen 3
R Geht das? JRE 1.4 global, 1.6.20 nur für eine Anwendung? Allgemeine Java-Themen 9
ruutaiokwu junit mit annotations geht nicht? Allgemeine Java-Themen 5
F externe module. geht das in Java? Allgemeine Java-Themen 3
N Java geht nicht mehr zu löschen Allgemeine Java-Themen 5
M XML-Datei geht bei voller Festplatte verloren Allgemeine Java-Themen 4
DStrohma Daten in JAR speichern geht nicht?? Allgemeine Java-Themen 22
S Viele Bilder -> Speicher ausgelastet? / (De-)serialisierung geht nicht mehr richtig Allgemeine Java-Themen 8
B Komplettes Projekt als UML Diagramm mit eUML...geht das? Allgemeine Java-Themen 10
N List<? implements "Interface"> geht nicht Allgemeine Java-Themen 13
C Methodenkopf: Zu was wenns auch ohne geht? Allgemeine Java-Themen 3
A Javakonsolenfenster geht gleich wieder zu Allgemeine Java-Themen 6
M Übergebener String bearbeiten geht nicht. Allgemeine Java-Themen 4
D iText und Table.setTableFitsPage(); geht nicht Allgemeine Java-Themen 12
E Cipher geht mal und mal nicht Allgemeine Java-Themen 3
G Datei löschen nach kopieren geht nicht Allgemeine Java-Themen 5
A Standalone geht - JSP u. Bean nicht Allgemeine Java-Themen 6
D Jar auf Mac starten geht nicht Allgemeine Java-Themen 3
M Klasse Desktop geht nicht mehr (EXCEPTION_ACCESS_VIOLATION) Allgemeine Java-Themen 9
M ireport (Jasper Report) geht nur auf meinen Rechner Allgemeine Java-Themen 3
S Rechner formatiert - nichts geht mehr. Allgemeine Java-Themen 2
S Apache Commons Net geht nicht Allgemeine Java-Themen 5
zilti Wieso geht der StreamReader/Writer nicht? Allgemeine Java-Themen 5
T Geht das vielleicht noch einfacher? Allgemeine Java-Themen 7
M commapi unter vista, geht das? Allgemeine Java-Themen 4
V JavaProgramm von Konsole starten geht nichtmehr Allgemeine Java-Themen 4
V JVM OutofMemory Linux geht, windows nicht Allgemeine Java-Themen 3
Chris_1980 Geht das nicht auch einfacher (Arcanoid Multiball) Allgemeine Java-Themen 2
H Vector<T>[] vecs = new Vector<T>[10]; geht nicht Allgemeine Java-Themen 2
D Geht es auch schneller doppelte Einträge zu löschen? Allgemeine Java-Themen 23
K java geht beim chatten nicht? Allgemeine Java-Themen 2
G Mit Java auf windows 2003 userrechte zugreifen geht sowas ? Allgemeine Java-Themen 2
R Drag und Drop von externen Files geht nur als Application Allgemeine Java-Themen 2
O Input stream geht net Allgemeine Java-Themen 2
J Threads, Doppelpufferung --> Beispiel gefunden, geht net Allgemeine Java-Themen 16
P rar.exe und variablenparameter als String geht net Allgemeine Java-Themen 4
G Da Jikes nicht mit java 5 geht, gibt es eine andere. Allgemeine Java-Themen 4
TheJavaKid warum geht das nicht? Allgemeine Java-Themen 14
G setLastModified geht nicht Allgemeine Java-Themen 8
H Ausführungsgeschwindigkeit reduzieren. Geht das? .. Allgemeine Java-Themen 21
G parseInt geht nicht Allgemeine Java-Themen 10
K Mit Java kleine Freeware Programme erstellen. Geht das? Allgemeine Java-Themen 16
G Konsoleneingabe: vordefinierte werte setzen? geht das? Allgemeine Java-Themen 4
L JTable: Wenn Zeile markiert dann Meldung. geht nicht Allgemeine Java-Themen 4
G Mouselistener geht aber danach Fehler bei JOptionPane Allgemeine Java-Themen 4
K Object casting geht nicht. Allgemeine Java-Themen 3
M Systemzeit der Java VM geht falsch Allgemeine Java-Themen 4
G Warum einfach wenns kompliziert auch geht? Allgemeine Java-Themen 12
K KeyEvent in eigenem Component geht nicht Allgemeine Java-Themen 3
L Jar-Datei aus Eclipse geht nicht Allgemeine Java-Themen 2
C Was geht noch? Allgemeine Java-Themen 13
P Nur eine Instanz eines Programms zulassen, wie geht das? Allgemeine Java-Themen 15
G Geht das? Allgemeine Java-Themen 4
V StreamTokenizer ???? Wie geht das Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben