ServerSocket! Senden und empfanen von Stream

yigiter

Mitglied
Hallo zusammen,

ich habe ein kleines Probleme.. habe keine Idee mehr :-)
Ich versuche eine Nachricht "tAnzeigeZipped" Typ byte[] per TCP zu versenden...

PS: tAnzeigeZipped dahinter steckt ein String das gezippt ist..
Code:
public byte[] zip(String data) throws IOException {
		ByteArrayOutputStream bOut = new ByteArrayOutputStream(data.length());
		byte[] bytes = data.getBytes(CHARSET_UTF_8);
		// Anzeige in GZipStream stecken
		GZIPOutputStream zOut = new GZIPOutputStream(bOut);
		zOut.write(bytes);
		zOut.close();
		bOut.close();

		return bOut.toByteArray();
	}

Wie kann ich die Daten empfangen ?

Sender ..
Code:
/**
	 * Holt aus dem Queue die Daten und versenset diese an die Clients
	 */
	public void run() {
		/* Soll Staendig laufen */
		while (true) {
			try {
				Socket tSocket;
				OutputStream wr;
				while (true) {
					byte[] tAnzeigeZipped = fInseratReadyToSendQueue.take();
					ConcurrentHashMap<Socket, String> fAngemeldeteClients = IpHolder.getVerfuegbareClients();
					// Sind Clients angemeldet ?
					if (fAngemeldeteClients.size() > 0) {
						Set<Entry<Socket, String>> tEntrySet = fAngemeldeteClients.entrySet();
						for (Iterator<Entry<Socket, String>> iterator = tEntrySet.iterator(); iterator.hasNext();) {
							Entry<Socket, String> tEntry = iterator.next();
							tSocket = tEntry.getKey();
							wr = tSocket.getOutputStream();
							wr.write(tAnzeigeZipped);
							wr.flush();
						}
					}
				}
			} catch (InterruptedException e) {
				e.printStackTrace();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}


Empfaenger..
Code:
private void receiveMessage() {
		Socket s;
		PrintWriter out;
		try {
			s = new Socket("localhost", fPortNr);
			out = new PrintWriter(new DataOutputStream(s.getOutputStream()));
			out.println("1000 START");
			out.flush();
			do {


			} while (true);

		} catch (SocketException e) {
			Activator.getDefault().logError(e.getMessage(), e);
		} catch (IOException e) {
			Activator.getDefault().logError(e.getMessage(), e);
		}

	}

Vielenn Dank im Voraus.
 
Zurück