String als byte Array über Socket versenden

Nothiing___

Mitglied
Hallo zusammen

Ich möchte einen String als bytes über einen BufferedOutputStream an den Client verschicken der die bytes dann mit einen BufferedInputStream empfängt.

den String habe ich bereits in bytes umgewandelt.

Java:
/*
			 * PfadName als String wird in Byte umgewandelt
			 */
			byte[] bytes = pfadZumSenden.getName().getBytes();
			System.out.println(bytes);

			/*
			 * Zur überprüfung wird diesen dann gleich wieder in einen String
			 * umgewandelt und ausgegeben.
			 */
			String fileName = new String(bytes);
			System.out.println(fileName);

Meine Frage nun, habe ich die Möglichkeit das byte[] bytes mit dem BufferedOutputStream zu versenden und beim Client dann wie oben diese empfangenen bytes wieder in einen String umzuwandeln?


Danke für eure Antwort
 
M

Marcinek

Gast
Ja das geht. ;)

Mit auf dem Client einen OutputStream und Server InputSteam und einer aktiven Socketverbindung
 
S

SlaterB

Gast
na auf korrekte Weise,
zeig doch bitte an Code, was du unter 'Die Verbindung zwischen Server und Client besteht bereits' verstehst, ist ein Socket mit Stream vorhanden oder was genau?

jede einfache google-Suche wie 'BufferedOutputStream example' liefert diverse Beispiele a la
Write to file using BufferedOutputStream - A Java Code Example
einen String oder ein byte[] in den Stream zu schreiben ist nur eine Zeile, aber mehr Schritte sind dann zum Socket usw. nötig
 

Nothiing___

Mitglied
na auf korrekte Weise,
zeig doch bitte an Code, was du unter 'Die Verbindung zwischen Server und Client besteht bereits' verstehst, ist ein Socket mit Stream vorhanden oder was genau?

jede einfache google-Suche wie 'BufferedOutputStream example' liefert diverse Beispiele a la
Write to file using BufferedOutputStream - A Java Code Example
einen String oder ein byte[] in den Stream zu schreiben ist nur eine Zeile, aber mehr Schritte sind dann zum Socket usw. nötig

Server-Seite
Java:
fileOut = new BufferedOutputStream(socketClientFile.getOutputStream());
			FileInputStream fileStream = new FileInputStream(pfadZumSenden);
			fileIn = new BufferedInputStream(fileStream);
			
			int len = 0;
			
			/*
			 * PfadName als String wird in Byte umgewandelt
			 */
			byte[] bytes = pfadZumSenden.getName().getBytes();
			System.out.println(bytes);

			/*
			 * Zur überprüfung wird diesen dann gleich wieder in einen String
			 * umgewandelt und ausgegeben.
			 */
			String fileName = new String(bytes);
			System.out.println(fileName);
			
			fileOut.write(bytes, 0, bytes.length);


Client-Seite
Java:
File filedest = new File("C:/Users/uex6071/Desktop/hoi.jpg");

		try {
			FileOutputStream fos = new FileOutputStream(filedest);
			fileOut = new BufferedOutputStream(fos);
			fileIn = new BufferedInputStream(socketFile.getInputStream());
			
			int len = 0;
			
			byte[] buffer = new byte[1024];
			byte[] bytes = new byte[1024];
			
			System.out.println(fileIn.read());
			System.out.println(new String(bytes) + " Filename");
			
		}
		catch(IOException e) {
			e.printStackTrace();
		}
 
Zuletzt bearbeitet:
S

SlaterB

Gast
auf Server-Seite also
> fileOut.write(bytes, 0, bytes.length);
wie du schon stehen hast, das macht ja besonders unverständlich, wieso du nach dem 'Senden' fragst,
ist noch das Empfangen beim Client eine offene Frage oder was genau ist das Problem?


edit:
beim Client
> fileIn.read(bytes)
 

Nothiing___

Mitglied
auf Server-Seite also
> fileOut.write(bytes, 0, bytes.length);
wie du schon stehen hast, das macht ja besonders unverständlich, wieso du nach dem 'Senden' fragst,
ist noch das Empfangen beim Client eine offene Frage oder was genau ist das Problem?


edit:
beim Client
> fileIn.read(bytes)

wie empfange ich den das gesendete beim Client und wandle dies dann in ein String um. Da liegt eigentlich mein Problem
 
S

SlaterB

Gast
-->
beim Client
> fileIn.read(bytes)
<--

ok, man muss wieder noch 0 + bytes.length als weitere Parameter angeben und das Array sollte wirklich groß genug sein,
den Rückgabewert der Methode unbedingt merken, den dann zusammen mit dem byte-Array an den String-Konstruktor übergeben

int x = fileIn.read(bytes,0, bytes.length)
new String(bytes,0,x);
 

Nothiing___

Mitglied
-->

<--

ok, man muss wieder noch 0 + bytes.length als weitere Parameter angeben und das Array sollte wirklich groß genug sein,
den Rückgabewert der Methode unbedingt merken, den dann zusammen mit dem byte-Array an den String-Konstruktor übergeben

int x = fileIn.read(bytes,0, bytes.length)
new String(bytes,0,x);


Herzlichen Dank hat funktioniert.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B HEX String zu einem Byte Array ? *verzweiflung* :( Netzwerkprogrammierung 16
O Ip-String in byte[]-Array umwandeln? Netzwerkprogrammierung 3
T String von Client zu Server kommt nicht an Netzwerkprogrammierung 92
T Brauche Hilfe beim GET-String für HttpURLConnection Netzwerkprogrammierung 4
T server empfängt nur 1 Buchstaben vom String Netzwerkprogrammierung 1
N Name eines Attributes aus einem festen String und einer Variablen generieren Netzwerkprogrammierung 5
S Socket String InputStream in hex umwandeln Netzwerkprogrammierung 1
T Socket Gleiche String ungleich? Netzwerkprogrammierung 8
M Socket String Arrays über Socket an Server schicken Netzwerkprogrammierung 2
F String in Datenbank speichern Netzwerkprogrammierung 1
I RMI String Netzwerkprogrammierung 2
precoc String Array versenden Netzwerkprogrammierung 7
T Socket String zu Socket Netzwerkprogrammierung 26
7 String an Server Netzwerkprogrammierung 2
lumo String[] wird zu null bei Serialisierung Netzwerkprogrammierung 8
S WebService, 4-stelliger String (Jahr) als Calendar Netzwerkprogrammierung 5
M String an PHP Script aus Java übergeben Netzwerkprogrammierung 12
M Messenger - String oder Objekte Netzwerkprogrammierung 4
T Socket Nullterminierten String lesen Netzwerkprogrammierung 4
J Datei übertragen ja String + datei übertragen nein Netzwerkprogrammierung 5
H String Array durch einen Stream schicken. Netzwerkprogrammierung 4
N Socket Stream in String Netzwerkprogrammierung 4
J Browser-String angeben Netzwerkprogrammierung 5
S String[] über Socket senden Netzwerkprogrammierung 3
F Stream wird als Char übertragen. Char -> in String umwand Netzwerkprogrammierung 5
G String in InetAddres umwandeln klappt nicht Netzwerkprogrammierung 5
A String per ByteBuffer empfangen? Netzwerkprogrammierung 6
ModellbahnerTT Problem feste String ins Netzwerk zu geben Netzwerkprogrammierung 5
G UTF-8 in STring umwandeln oder umgedreht Netzwerkprogrammierung 12
F String in eine URL umwandeln Netzwerkprogrammierung 7
P string over net Netzwerkprogrammierung 4
T Html-Source über URL in einen String speichern? Netzwerkprogrammierung 16
K String zurück liefern ! Netzwerkprogrammierung 4
S SSLSocketFactory.createSocket(String hostname, int port),wo? Netzwerkprogrammierung 5
C gesendeten String einlesen Netzwerkprogrammierung 3
G String to Socket ? Netzwerkprogrammierung 3
A StringCorruptedException: invalid String header Netzwerkprogrammierung 2
x46 Byte-Array per for-Schleife schicken Netzwerkprogrammierung 1
x46 byte[] über BufferedReader auslesen Netzwerkprogrammierung 18
D Socket Gute Idee?: File als byte[] per ObjectIOStream übertragen Netzwerkprogrammierung 3
M TCP Verbindung Byte-weise lesen? Netzwerkprogrammierung 5
C Byte Stream dekodieren Netzwerkprogrammierung 7
W Socket Byte Array senden Netzwerkprogrammierung 2
M Byte Array kommt nicht an Netzwerkprogrammierung 0
N Paket-Analysieren Byte-Streams Netzwerkprogrammierung 12
K Socket byte Schleife beendet nicht Netzwerkprogrammierung 9
K Byte für Byte aus InputStream lesen Netzwerkprogrammierung 5
B Socket Byte-array Komprimieren Netzwerkprogrammierung 3
J Probleme bei RSA mit byte[] bei Versand über RMI Netzwerkprogrammierung 2
T Outputstream Byte-Array senden Netzwerkprogrammierung 2
J byte[] auf Stream schreiben Netzwerkprogrammierung 2
Q NullPointExeption beim Versuch byte[] zu senden/writen Netzwerkprogrammierung 3
E RTP Packet lesen - Byte Problem 0xFFFFFF80 statt 0x80 Netzwerkprogrammierung 7
V Zuweisen einer InetAddress mit einem byte Netzwerkprogrammierung 5
D Byte-Zähler des Netzwerkinterface auslesen Netzwerkprogrammierung 2
T Kommunikation auf Byte-Ebene zw. C und Java via Socket Netzwerkprogrammierung 12
H Byte-Codierung bei Socket-Verbindung ändern Netzwerkprogrammierung 8
8 Socket Streams nur mit Byte? Netzwerkprogrammierung 2
G binärwert aus 2 byte auslesen Netzwerkprogrammierung 7
D Daten per Server- Client nur als byte verschicken? Netzwerkprogrammierung 3
O JAVA hängt bei Dateikopie über LAN ein Byte an!!! ARGH Netzwerkprogrammierung 3
OnDemand Json Objekt leeres Array beim lesen Netzwerkprogrammierung 9
A Server Antwort enthält JSON Objekt/Array Netzwerkprogrammierung 8
U ein ganzes Array effizient übermitteln Netzwerkprogrammierung 6
J Array oder Object über Sockets Netzwerkprogrammierung 8
O Über Socket Array versenden Netzwerkprogrammierung 5
A array übers netzwerk (anfänger) Netzwerkprogrammierung 8
S Socket-Array vs. MulticastSocket Netzwerkprogrammierung 2
P Array per Socketverbindung versenden Netzwerkprogrammierung 2
P Probleme mit einem Array aus Sockets Netzwerkprogrammierung 2
J Prblem, wenn im verschickten Objekt ein Array ist Netzwerkprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben