Serialisierung

Status
Nicht offen für weitere Antworten.
S

Snake_y

Gast
Hallo,

ich habe folgendes simples Problem. Und zwar möchte ich eine Datei mit ggf binären Daten serialisieren.

Code:
import java.io.*;

class SerializedFile implements Serializable
{
// private static final long serialVersionUID=3;
 private byte data[]=null;
 public SerializedFile(File f) throws IOException
 {
  FileInputStream in=new FileInputStream(f);
  byte arr[]=new byte[in.available()];
  in.read(arr);
  this.data=arr;
  in.close();
 }
 public void writeToFile(File f) throws FileNotFoundException, IOException
 {
  FileOutputStream out=new FileOutputStream(f);
  out.write(this.data);
  out.close();
 }
}

public class TestClient 
{
 public static void main(String[] args) throws Exception
 {
  //Open File and read in bytes
  SerializedFile s=new SerializedFile(new File("c:\\a.jpg"));
  //store serialized object in a byte array
  ByteArrayOutputStream bos = new ByteArrayOutputStream() ;
  ObjectOutput out = new ObjectOutputStream(bos) ;
  out.writeObject(s);
  out.close();
  //toString
  String s2=(new String(bos.toByteArray()));
  //read the object
  byte [] data=s2.getBytes();
  ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(data));
  SerializedFile s3=(SerializedFile) in.readObject();
  in.close();
  //write loaded data to a new file
  s3.writeToFile(new File("c:\\out.jpg"));
 }
}


Soweit so gut, nur kommt nicht mehr das raus, was ich vorher reingeschickt habe. :cry:

An dem byte[] -> String und zurück kann es nicht liegen, da ich in einem anderen Beispiel vorher alles Base64 kodiert habe, auch dort, dasselbe Resultat !

Hat jemand eine Ahnung woran das liegt ????
 

meez

Top Contributor
Das ist etwa das sinnloseste, das ich je gesehen habe..
Warum willst du eine Datei einlesen und sie dann serialisieren...
 

Sky

Top Contributor
Ich kann mich meez nur anschließen... was hast Du vor!? Willst Du eine Datei kopieren oder was soll der Sinn deines Code's sein!?
 
S

Snake_y

Gast
Das ist die sinnloseste Antwort, die ich je gesehen habe.

Wenn ich nun ein beliebiges byte [] Feld mit Werten habe, verhält es sich genauso, die jpg-Datei ist nur zu Testzwecken.

PS: Dateien serialisieren ? Schonmal was von SOAP, Webservices, Kapselung & Co gehört ??
 

meez

Top Contributor
Snake_y hat gesagt.:
Schonmal was von SOAP, Webservices, Kapselung & Co gehört ??

Nein noch nie... :bahnhof: :autsch:

Aber mal im Ernst, ohne dir ans Bein pissen zu wollen, der Code da oben ist absoluter Quatsch und ziemlich unübersichtlich..

Du liest ein File in einen byte Array in einem Object speicherst das Object als byte in einem String!! liest danach das Objekt vom String wieder ein und schreibst das File wieder neu...Vorallem das hier:
Code:
  String s2=(new String(bos.toByteArray()));
   byte [] data=s2.getBytes(); 
  ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(data));
  SerializedFile s3=(SerializedFile) in.readObject();
  in.close();

Kannst du mich mal aufklären, was du da wolltest??

Ist ja klar, dass da was anderes rauskommt...Dass keine Exception geschmissen wird, wundert mich ein wenig
 
S

Snake_y

Gast
Hallo,

ist das nicht mein Problem, wöfur ich das brauche.

Es geht hier um Codierungen, und ich möchte mit diesem Testprogramm wissen, ob wieder genau das nach der Codierung herauskommt, was ich reingesteckt habe, deshalb dieser dämliche Code.
Hätte ich kein Bild genommen, müßte ich mir noch ein extra Code bauen, der den Anfang mit dem Ergebnis vergleicht, nehme ich Bilder, sehe ich es direkt.

Ich möchte wissen, warum das so ist, und keine Fragen beantworten, die etwas mit meinem Codestil oder sonstwas zu tun hat.
Ich will auch keine Kommentare dazu haben, sondern meine Frage beantwortet haben.

Falls das in diesem Forum nicht möglich ist, stelle ich diese Frage eben woanders.

Ich finde es übrigens eine Frechheit, wenn hier scheinbar mehr Kommentare über Anfänger losgelassen werden, als tatsächlich Fragen beantwortet. Tut mir leid, es gibt bessere Foren, wo das anders geregelt wird.
Tut mir leid, daß ich so dämlich bin.
 

byte

Top Contributor
spätestens jetzt hat sicherlich keiner hier mehr lust, sich durch deinen spagetti-code zu wühlen. :noe:

ich zumindest nich mehr ... viel spaß im nächsten forum.
 
S

Snake_y

Gast
Danke, danke, hat sich erledigt, habe den Fehler gefunden.

PS:
Ich hoffe ihr habt kompetentere Leute hier :lol:

Tschö.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Problem mit der Serialisierung Java Basics - Anfänger-Themen 31
M Serialisierung in Java Java Basics - Anfänger-Themen 10
S Serialisierung: Laden von Objekten - Risiken? Java Basics - Anfänger-Themen 4
C Java Applet Fragen: Serialisierung, Excel import Java Basics - Anfänger-Themen 2
I Input/Output Alternative zur Serialisierung/ ImageJ Objecte Java Basics - Anfänger-Themen 7
W Nullpointer bei Objekt Serialisierung mit ArrayList<byte[]> etc. Java Basics - Anfänger-Themen 2
V Java Serialisierung Java Basics - Anfänger-Themen 2
O Objekt Listen serialisierung und deserialisieren Java Basics - Anfänger-Themen 5
U Serialisierung Probleme bei Umsetzung Java Basics - Anfänger-Themen 26
V Serialisierung Umbennung einer Klasse Java Basics - Anfänger-Themen 2
G Input/Output Serialisierung oder Datenbank Java Basics - Anfänger-Themen 6
K Input/Output Serialisierung Java Basics - Anfänger-Themen 7
P Serialisierung - Objekte vergleichen Java Basics - Anfänger-Themen 4
J Input/Output Serialisierung Java Basics - Anfänger-Themen 6
K Serialisierung: speichern und auslesen, auslesen klappt nicht Java Basics - Anfänger-Themen 14
B Std-Serialisierung - Speichern/Laden geht nur auf einem Rechner Java Basics - Anfänger-Themen 17
W Problem mit Serialisierung von jTable Java Basics - Anfänger-Themen 15
E Serialisierung - Exception? Java Basics - Anfänger-Themen 21
T Collections (De)-Serialisierung meines HashSets Java Basics - Anfänger-Themen 3
J Input/Output Serialisierung Java Basics - Anfänger-Themen 6
W Problem mit Serialisierung und TableModel Java Basics - Anfänger-Themen 3
F Sonderzeichen bei XML Serialisierung nicht konvertieren Java Basics - Anfänger-Themen 7
O Serialisierung: Object abspeichern und aufrufen Java Basics - Anfänger-Themen 6
L Java Serialisierung Singleton Java Basics - Anfänger-Themen 6
Luk10 Serialisierung bei schon vorhandener Datei Java Basics - Anfänger-Themen 15
I Serialisierung ClassNotFound Java Basics - Anfänger-Themen 8
S serialisierung Java Basics - Anfänger-Themen 3
E Alternativen zur binären Serialisierung ? Java Basics - Anfänger-Themen 9
J Serialisierung - Array-Objekt serialisieren/deserialisieren Java Basics - Anfänger-Themen 6
G Frage zu Serialisierung Java Basics - Anfänger-Themen 4
M Serialisierung erstes Beispiel Java Basics - Anfänger-Themen 4
A Per Serialisierung speichern Java Basics - Anfänger-Themen 2
DStrohma Problem mit Serialisierung Java Basics - Anfänger-Themen 3
T Threads und Serialisierung Java Basics - Anfänger-Themen 4
Z Serialisierung vs. Sicherheit Java Basics - Anfänger-Themen 2
R Serialisierung von Objekten Java Basics - Anfänger-Themen 12
G Objekt Serialisierung Java Basics - Anfänger-Themen 3
P Serializable - Serialisierung Java Basics - Anfänger-Themen 5
P Collection Vector speichern mittels Serialisierung? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben