rendered paste bodypackage basis;import java.io.BufferedReader;public class TcpClientListener extends Thread { private int buffersize = 1024; private ServerSocket srvr; Server refToServerClass; public TcpClientListener(int listenPort, Server serverKlasse) { refToServerClass = serverKlasse; try { srvr = new ServerSocket(listenPort); Helpers.debugOut("TcpClientListener started"); } catch (Exception ex) { } } public void run() { Helpers.debugOut("listening... on: "+srvr.getLocalPort()+" "+srvr.getLocalSocketAddress()); try { while (true) { Helpers.debugOut("Socket for TCP Client Listening is accepting!"); Socket skt = srvr.accept(); Helpers.debugOut("Verbindung angenommen"); // PrintWriter out = new PrintWriter(skt.getOutputStream(), // true); InputStreamReader inStream = new InputStreamReader(skt .getInputStream()); BufferedReader in = new BufferedReader(inStream); while (!in.ready()) { sleep(10); } String clientCommand = in.readLine(); String comand = clientCommand.substring(0, 3); Helpers.debugOut(comand); if (comand.compareTo("get")==0) { Helpers.debugOut("get: "+clientCommand); String fileName = clientCommand.substring(4, clientCommand.length()); File sendFile = new File("share/" + fileName); Helpers.debugOut("sendFile.getLength: "+sendFile.length()+" Name: "+sendFile.getAbsolutePath()); FileInputStream testIn = new FileInputStream(sendFile);//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<hier byte[] buf = new byte[2000]; int r = testIn.read(buf); while(r > 0){ skt.getOutputStream().write(buf, 0, r); r = testIn.read(buf); }/* // byte[] fileBytes = new byte[(int) sendFile.length()]; // testIn.read(fileBytes); int temp; Helpers.debugOut("request"); for (temp = 1; temp * buffersize < sendFile.length(); temp++) { Helpers.debugOut("buffersize < length"); byte[] fileBytes = new byte[buffersize]; Helpers.debugOut("vor read"); testIn.read(fileBytes, 0,buffersize); Helpers.debugOut("vor senden"); skt.getOutputStream().write(fileBytes); Helpers.debugOut("nach senden"); } if ((temp - 1) * buffersize < sendFile.length()) { Helpers.debugOut("buffersize > length"); Helpers.debugOut("filesize mod buffersize"+sendFile.length() % buffersize); byte[] fileBytes = new byte[buffersize]; Helpers.debugOut("vor read"); testIn.read(fileBytes, 0, (int) sendFile.length() % buffersize); skt.getOutputStream().write(fileBytes); Helpers.debugOut("nach senden"); }*/ testIn.close(); // FileOutputStream dataOut = new // FileOutputStream(sendFile); // out.print(fileBytes); // out.print(sendFile); // skt.getOutputStream().write(fileBytes); skt.close(); } } } catch (Exception ex) { } }}