Zwei verschiedene Dateien mittels einem Binärstream übertragen?

Hanni6al

Mitglied
Hallo,

ist es in java möglich zwei verschiedene Dateien z.B.:.xls & jpg mittels einen Binärstream zu übertragen?
Wenn ja wie kenne ich diese zwei Dateien wieder auseinander, wenn ich sie wieder an einen anderen Platz abspeichern will?
Danke in vorraus!

mfg
 

Der Müde Joe

Top Contributor
öhm ja..

>, wenn ich sie wieder an einen anderen Platz abspeichern will?

Was hast du vor? Lochkarten bedrucken, Dateien kopieren, via Bittorrent Protokoll eine Datei verschicken....
 

Michael...

Top Contributor
ist es in java möglich zwei verschiedene Dateien z.B.:.xls & jpg mittels einen Binärstream zu übertragen?
Ja, schau Dir mal die Klassen, die von Input/OutputStream erben an, z.B. DataInput/OutputStream
Wenn ja wie kenne ich diese zwei Dateien wieder auseinander, wenn ich sie wieder an einen anderen Platz abspeichern will?
Entweder per Protokoll über den Stream oder sonst irgendwie. Der Empfänger muss ja wissen, wie er mit dem Stream umgehen muss. Es muss z.B. den Dateinamen und die "Position" der Datei im Stream wissen.
 

Hanni6al

Mitglied
@Müde Joe
Also ich will einfach zwei Dateien auf einmal Übertragen eine Datei ist die Datei selbst um die es geht und die zweite soll nur die Beschreibung zu dieser Datei sein.(Sry wegen der komischen Beschreibung)
 

Der Müde Joe

Top Contributor
>eine Datei ist die Datei

Naja... wenn du einfach eine Datei kopierst ist es ein FileChannel (übertragung via NorthBridge zur CPU und dem SystemBus, so ca)
Wenn du sie über irgendeine netzwerktechnologie übertragen willst, brauchst du Sockets zu öffnen... HTTPClients oder
FTP... oder oder

Drum: Was hast du vor?
 
S

SlaterB

Gast
@Der Müde Joe
ich finde die Originialfrage recht deutlich erstellt,

es gibt irgendeinen Sender, der zwei Dateien in einen Binärstream schreibst, da kann man leicht verallgemeinern 'zwei byte-Mengen',
und ein Empfänger erhält all die Bytes und muss sie wieder auseinanderinterpretieren,

woher die Bytes ursprünglich kommen ist ziemlich egal, dass der Empfänger sie dann weiterverarbeiten kann man als gegeben voraussetzen,
auch Sockets sind nicht das Thema, bleibt nur die Übertragung, die Organisation der Bytes,

ganz andere Wege wie FTP usw. kann man ja gerne vorschlagen, aber doch eher in freundlichen Alternativ-Ton,

@Hanni6al
Antwort von Michael... gesehen?
 

Empire Phoenix

Top Contributor
in binär stream:

bytes datei 1
bytes datei 2
byte[]1
byte[]2

beispiel:
(per data outputstream)
13(byte)1(byte)2(byte)3
-> datei 1 ist 1 byte lang
-> datei 2 ist 2 byte lang
inhalt datei 1 ist das byte mit dem wert 1
inhalt datei 2 ist byte[]{2,3}

und fertig
 

Hanni6al

Mitglied
Also hier hab ich mal den Code den ich für eine Datei erstellt habe:

Java:
 public static byte[] fileUpLoad(String fileName)
   {
      try{         
         String filepath = "C:\\Documents and Settings\\FileServer\\";
         File file = new File(filepath+fileName);
         byte buffer[] = new byte[(int)file.length()];
         
         BufferedInputStream input = new
            BufferedInputStream(new FileInputStream("filepath"+file.getName()));
         input.read(buffer,0,buffer.length);
         input.close();
         return(buffer);
      } catch(Exception e){
         System.out.println("FileImpl: "+e.getMessage());
         e.printStackTrace();
         return(null);
         }            
   }
   

   public static void downLoadFile(String filename)
   {      
      try {         
         String savepath = "C:\\Documents and Settings\\ClientFolder\\";
         byte[] filedata = fileUpLoad(filename);

         File file = new File(savepath + "ServerPic01.jpg");
         
         BufferedOutputStream output = new
           BufferedOutputStream(new FileOutputStream(savepath+"ServerPic01.jpg"));
         output.write(filedata,0,filedata.length);
         output.flush();
         output.close();
      } catch(Exception e) {
         System.err.println("FileServer exception: "+ e.getMessage());
         e.printStackTrace();
      }       
      
   }
  
   
   public static void main(String[] args) {
      downLoadFile("testPic01");
   }

}

Muss ich bei read und write je nachdem wieviele Dateien auf einmal übermittelt will das byte Array dazuhängen mit der jeweiligen Größe, dann sollte es gehen oder?
 
S

SlaterB

Gast
hmm, dein Code liest eine Datei ein und schreibt sie wieder,

von mehreren Dateien, (zu unterscheidenden) byte-Arrays, dazuhängen und 'jeweilige Größe' ist ziemlich wenig zu lesen

wenn du sagen willst, dass du bei Netzwerkübertragung, welche in deinem Code nicht abgebildet ist, die eingelesenen byte-Arrays an den Übertragungs-Stream übergeben musst, dann ist das grundsätzlich natürlich richtig
 
Zuletzt bearbeitet von einem Moderator:

Hanni6al

Mitglied
Hallo,

ja stimmt dieser Teil fehlt noch, da stellt sich die nächste Frage wie kann ich bei einen FileInputStream mehrere Dateien anhängen?
 

Hanni6al

Mitglied
Ich will einfach zwei Files per einem Stream übertragen und sie dann wieder trennen, aber da es ja nicht geht(hab wohl was falsch verstanden) ist es ja hinfällig.


Aber andere Frage:



Ist es möglich, zwei Binärstreams gleichzeitig zurückzugeben? (Beschreibungs-File + File)?
 
Zuletzt bearbeitet:
S

SlaterB

Gast
um diese beiden Dateien einzulesen brauchst du zwei separate FileInputStreams,
was du dann mit den gelesenen Bytes machst ist die nächste Frage,

der typische Gedankengang für die (simple unsaubere) Socket-Übertragung ist, dass der Client von beiden FileInputStreams die bytes in den einen socket.getOutputStream() schreibt,
der Empfänger hat dann socket.getInputStream() mit den bytes beider Dateien und das Problem, diese zu unterscheiden,

so dachte ich die ganze Zeit, denke nicht dass sich jemand dazu allzu verneinend geäußert hat, nur Fragen a la
> wie kann ich bei einen FileInputStream mehrere Dateien anhängen
helfen dabei kaum weiter

edit:
> Ist es möglich, zwei Binärstreams gleichzeitig zurückzugeben?

möglich ist immer quasi alles, wann wo wie was warum genau?
eine Methode kann nur einen Wert zurückgeben, aber das kann immer ein Container sein, der mehrere Dinge enthält
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O Text aus einer Textdatei rausholen, der zwischen zwei Schlüsselworten steht Allgemeine Java-Themen 4
D Zwei Listen vergleichen Allgemeine Java-Themen 7
Tobero Wie berechnet man ob zwei Linien sich schneiden? Allgemeine Java-Themen 2
kodela Zwei gleichzeitig gedrückte Steuertasten Allgemeine Java-Themen 10
X Bedingung zwei mal überprüfen Allgemeine Java-Themen 4
Zrebna Random Number - Generische Formel zwischen zwei INKLUSIVEN Werten Allgemeine Java-Themen 16
D Input/Output Zwischen zwei ID-Räumen unterscheiden und Objekt löschen Allgemeine Java-Themen 16
D OOP Gemeinsamen ID-Raum für zwei Klassen implementieren Allgemeine Java-Themen 7
S Wenn eine Klasse zwei Interfaces mit derselben Methodensignatur implementiert: welche wird aufgerufen? Allgemeine Java-Themen 15
S Kann man Variablen oder Felder definieren deren Typ zwei Interfaces ist..? Allgemeine Java-Themen 9
K Aus String zwei Jahreszahlen auslesen Allgemeine Java-Themen 18
M Wie kann man eine void Methode mit Variablen von zwei verschiedenen Objekten ausführen? Allgemeine Java-Themen 15
VfL_Freak Double mit zwei festen NK-Stellen ausgeben Allgemeine Java-Themen 9
Neoline Methoden Zwei Arrays abwechselnd zusammenführen Allgemeine Java-Themen 15
J Zwei Wavdateien gleichzeitig mit SourceDataLine abspielen Allgemeine Java-Themen 0
D Best Practice Die niedrigste Differenz zwischen zwei Listen ermitteln. Allgemeine Java-Themen 10
J Fahrroute zwischen zwei Punkten finden Allgemeine Java-Themen 1
J Kollision von zwei Kreisen Allgemeine Java-Themen 15
J Transfer von Integer zwischen zwei Clients - RMI Allgemeine Java-Themen 4
S Variablen split-Funkton mit zwei Variabeln verwenden? Allgemeine Java-Themen 4
T Alle Kombinationen aus zwei Arrays Allgemeine Java-Themen 8
G Liste zwischen zwei Kalenderdaten erstellen Allgemeine Java-Themen 3
AssELAss Zwei Arrays / ArrayLists inhaltlich vergleichen Allgemeine Java-Themen 2
H RegularExpression zwischen zwei Strings Allgemeine Java-Themen 2
P Zwei Applikationen mit einem Job Allgemeine Java-Themen 0
A Lineare Interpolation mit zwei Arrays Allgemeine Java-Themen 4
E Berechnung des Schnittpunktes von zwei Geraden Allgemeine Java-Themen 1
S Zwei String vergleichen, Fehler markieren Allgemeine Java-Themen 3
G Matrix reduzieren zwei Methoden Allgemeine Java-Themen 2
Dechasa Vergleichen von zwei Arrays Allgemeine Java-Themen 4
P Zwei ArrayLists: Ohne die eine überhaupt anzurühren, wird sie verändert Allgemeine Java-Themen 2
S Anwendung zum ausrechnen der Differenz von zwei Tagen Allgemeine Java-Themen 9
F Zwei LinkedHashMaps iterieren und vergleichen Allgemeine Java-Themen 2
M Zwei unterschiedliche JAR Dateien mit ANT erstellen Allgemeine Java-Themen 8
B Fehler beim Auslesen von Einstellungen. Zwei ähnliche Blöcke, nur eins geht. Allgemeine Java-Themen 5
L Zwei Files miteinander vergleichen und Grafisch darstellen Allgemeine Java-Themen 1
T Zwei Wortendungen vergleichen ohne .equals Allgemeine Java-Themen 10
F Webstart zwei Java Versionen / aktivieren bzw deaktivieren Allgemeine Java-Themen 2
S Zwei Comparable (compareTo) vergleichen Allgemeine Java-Themen 6
E zwei Gleitkommazahlen durcheinander dividieren Allgemeine Java-Themen 2
X Generic muss zwei Klassen/Interfaces erfüllen Allgemeine Java-Themen 5
turmaline OOP zwei gleiche Methoden mit kleinen Unterschieden Allgemeine Java-Themen 15
C Threads Zwei Threads greifen auf LinkedList zu. Allgemeine Java-Themen 12
T Wie heißt ein Binärbaum, dessen Knoten immer zwei Kinder haben müssen? Allgemeine Java-Themen 2
C ActionListener zwei Buttons zuweisen Allgemeine Java-Themen 11
M Eclipse drei slashs durch zwei ersetzen? Allgemeine Java-Themen 3
1 zwei Strings vergleichen Allgemeine Java-Themen 16
C Buchstaben, die in zwei Wörtern vorkommen Allgemeine Java-Themen 13
J Gleiche Packagestruktur in zwei *.jar Dateien Allgemeine Java-Themen 4
G Zwei bytes vergleichen Allgemeine Java-Themen 2
B zwei-dimensionale Collections bzw. Array mit Indizes Allgemeine Java-Themen 3
C Zwei Arrays vereinen Allgemeine Java-Themen 3
K Objekt-Austausch zwischen zwei Programmen über System-Clipboard Allgemeine Java-Themen 5
N hashCode() für zwei ints Allgemeine Java-Themen 5
turmaline Gleichheit von zwei Maps Map <String, Map <String, String>> Allgemeine Java-Themen 30
N Wie Listenabgleich auf zwei CPU Cores auslagern? Allgemeine Java-Themen 6
D Zufall wahr bzw. falsch mit zwei Faktoren Allgemeine Java-Themen 10
H Datenaustausch zwischen zwei Java-Programmen Allgemeine Java-Themen 5
H Ausgabe von zwei Textfeldern Allgemeine Java-Themen 3
H Zwei unabhängige Threads miteinander kommunizieren lassen Allgemeine Java-Themen 3
G zwei mal synchronized Allgemeine Java-Themen 5
Z zwei Daten vergleichen Allgemeine Java-Themen 4
C ArrayList anhand von zwei Attributen sortieren Allgemeine Java-Themen 4
S Alle Elemente von zwei Listen vergleichen Allgemeine Java-Themen 10
T IText: Zwei A4 PDF´s auf ein A3 PDF´s Allgemeine Java-Themen 2
J Verschachtelte ListIteratoren um in zwei Listen hin und herzugehen Allgemeine Java-Themen 5
A Differenz zwischen zwei Uhrzeiten Allgemeine Java-Themen 7
H Shortcut ruft zwei Menu-punkte auf Allgemeine Java-Themen 5
J Zwei konstruktoren? Allgemeine Java-Themen 8
A zwei listen vergleichen und unterschiede anzeigen Allgemeine Java-Themen 3
J Zwei sortierte Listen zusammenfassen Allgemeine Java-Themen 8
G Linked List zwischen zwei Threds übergeben Allgemeine Java-Themen 11
J zwei HashMaps vereinen Allgemeine Java-Themen 3
C Viele Informationen aus zwei Collections vergleichen Allgemeine Java-Themen 2
G Jfreechart zwei charts Allgemeine Java-Themen 2
S Zwei Anwendungen unter Tomcat Allgemeine Java-Themen 4
T Anzahl Tage zwischen zwei Daten - Stunde fehlt? Allgemeine Java-Themen 2
V Zwei ArrayList(s) vergleichen Allgemeine Java-Themen 6
T Überprüfen ob zwei Farben ähnlich sind Allgemeine Java-Themen 14
M zwei main-Methoden Allgemeine Java-Themen 7
P zwei JFrames zusammenhängen Allgemeine Java-Themen 4
A Summe und Produkt von zwei Feldern ( arrays) Allgemeine Java-Themen 9
M HashMap kapselt zwei Objekte aber wie baut man eine Matrix? Allgemeine Java-Themen 2
H zwei Date Variablen überschreiben sich Allgemeine Java-Themen 2
2 Tage zwischen zwei Datumsdaten zählen Allgemeine Java-Themen 2
G Tage zwischen zwei Datumsdaten zählen Allgemeine Java-Themen 3
J Zwei String auf ähnlichkeiten untersuchen? Allgemeine Java-Themen 3
C kürzester weg zwischen zwei Punkten, Koordinaten finden Allgemeine Java-Themen 15
B zwei Bilder miteinander vergleichen Allgemeine Java-Themen 25
L Anzahl Tage zwischen zwei Kalenderdaten Allgemeine Java-Themen 5
P Threadprogrammierung - zwei Threads parallel - einer beendet Allgemeine Java-Themen 3
G Kommunikation von zwei Java-Programmen Allgemeine Java-Themen 3
A Zusammenfassen von zwei Dateien (wie beim DOS-Befehl copy) Allgemeine Java-Themen 6
S zwei Arrays zusammenfassen Allgemeine Java-Themen 14
L Zwei Hashtables statt einer? Allgemeine Java-Themen 6
M zwei Threads - ein singleton-Objekt Allgemeine Java-Themen 3
A funktion schiffeZeichnen zwei mal aufrufen Allgemeine Java-Themen 16
G zwei Rückgabewerte gefordert. Was tun ? Allgemeine Java-Themen 10
Chucky Zwei Binärbäume vereinigen Allgemeine Java-Themen 7
B Fehler:Mein Applet kann nicht auf zwei txt-Dateien zugreifen Allgemeine Java-Themen 2

Ähnliche Java Themen


Oben