java - Implementation of a simple file transfer client server -
hi have following code client - server through thread, have errors,
can't setup server on port number.
can't setup server on port number.
but why?
class client:
import java.io.*; import java.net.socket; // create class client public class client extends thread { socket socket = null; socket socket1 = null; // create send method public void sendfile() throws ioexception { string host = "127.0.0.1"; string host1 = "127.0.0.2"; socket = new socket(host, 4444); socket1 = new socket(host1, 444); file file = new file("/home/reza/desktop/link help"); file file1 = new file("/home/reza/desktop/hi"); long length = file.length(); long length1 = file1.length(); byte[] bytes = new byte[(int) length]; byte[] bytes1 = new byte[(int) length1]; fileinputstream fis = new fileinputstream(file); fileinputstream fis1 = new fileinputstream(file1); bufferedinputstream bis = new bufferedinputstream(fis); bufferedoutputstream out = new bufferedoutputstream(socket.getoutputstream()); bufferedinputstream bis1 = new bufferedinputstream(fis1); bufferedoutputstream out1 = new bufferedoutputstream(socket1.getoutputstream()); int count; int count1; while ((count = bis.read(bytes)) > 0) { out.write(bytes, 0, count); } while ((count1 = bis1.read(bytes1)) > 0) { out1.write(bytes1, 0, count1); } thread t = new thread(new runnable() { public void run() { while(socket.isconnected()) { wait2(); try { sendfile(); } catch (ioexception e) { e.printstacktrace(); } } } }); thread t1 = new thread(new runnable() { public void run() { while(socket1.isconnected()) { wait2(); try { sendfile(); } catch (ioexception e) { e.printstacktrace(); } } } }); t.start(); t1.start(); fis.close(); fis1.close(); out.close(); bis.close(); out1.close(); bis1.close(); socket.close(); socket1.close(); } public void wait2() { try { thread.currentthread().sleep(3000); } catch (interruptedexception x) { system.out.println("interrupted!"); } } }
// class server
import java.io.*; import java.net.*; public class server { public void recivefile() throws ioexception { serversocket serversocket = null; serversocket serversocket1 = null; try { serversocket = new serversocket(4444); //serversocket1 = new serversocket(444); } catch (ioexception ex) { system.out.println("can't setup server on port number. "); } try { serversocket1 = new serversocket(444); } catch (ioexception ex) { system.out.println("can't setup server on port number. "); } socket socket = null; socket socket1 = null; inputstream = null; inputstream is1 = null; fileoutputstream fos = null; fileoutputstream fos1 = null; bufferedoutputstream bos = null; bufferedoutputstream bos1 = null; int buffersize = 0; int buffersize1 = 0; try { socket = serversocket.accept(); socket1 = serversocket1.accept(); } catch (ioexception ex) { system.out.println("can't accept client connection. "); } try { = socket.getinputstream(); is1 = socket1.getinputstream(); buffersize = socket.getreceivebuffersize(); buffersize1 = socket1.getreceivebuffersize(); system.out.println("buffer size: " + buffersize); system.out.println("file recieved"); system.out.println("buffer size1: " + buffersize1); system.out.println("file recieved"); system.out.println("file recieved"); } catch (ioexception ex) { system.out.println("can't socket input stream. "); } try { fos = new fileoutputstream("/home/reza/desktop/reza"); bos = new bufferedoutputstream(fos); fos1 = new fileoutputstream("/home/reza/desktop/ali"); bos1 = new bufferedoutputstream(fos1); } catch (filenotfoundexception ex) { system.out.println("file not found. "); } byte[] bytes = new byte[buffersize]; int count; while ((count = is.read(bytes)) > 0) { bos.write(bytes, 0, count); } byte[] bytes1 = new byte[buffersize1]; int count1; while ((count1 = is1.read(bytes1)) > 0) { bos1.write(bytes1, 0, count1); } bos.flush(); bos.close(); bos1.flush(); bos1.close(); is.close(); is1.close(); socket.close(); serversocket.close(); socket1.close(); serversocket1.close(); } public static void main(string[] args) throws ioexception { system.out.println("server run, please send file"); server s = new server(); s.recivefile(); } }
error : can't setup server on port number. can't setup server on port number.
you can't start server on 127.0.0.2 - therein lies problem.
Comments
Post a Comment