2011-03-10 13 views
5

istemciden görüntü gönderme.JAVA yeni Im böylece em kolay lütfen gidin sunucuya

Birbirine ve başka bir öğeye başarıyla bağlanabilen bir sunucu ve istemcim var, ancak istemcinin 1 işlevi sunucuya bir resim göndermektir. Herhangi bir kimse bunun için bir kod (java'da değil, bir web'de Uygulama). Java

+0

Ben bir web uygulaması değil anlaşılan. Yoksa öyle mi? –

+0

java kodunu istiyorum –

+0

Ne tür bir istemci/sunucunuz var? Bir web sunucusu mu? Uygulama sunucusu? Kendini yazılı? Kurulmuş? Daha fazla bilgi pls. –

cevap

5

hoş geldiniz!

Eğer yuva kullanabilirsiniz, el altında görevi başarmak için.

Müşteri kodu:

function sendFile (String serverIp, int serverPort) { 
    int i; 
    FileInputStream fis = new FileInputStream ("/path/to/your/image.jpg"); 

    Socket sock = new Socket(serverIp, serverPort); 
    DataOutputStream os = new DataOutputStream(sock.getOutputStream()); 
    while ((i = fis.read()) > -1) 
     os.write(i); 

    fis.close(); 
    os.close(); 
    sock.close(); 
} 

Sunucu kodu: istemci üzerinde SendFile() aramadan önce

function listenForFile(int port) { 
    ServerSocket socket = new ServerSocket(serverPort); 
     while (true) { 

      Socket clientSocket = socket.accept(); 

      DataInputStream dis = new DataInputStream(clientSocket.getInputStream()); 
      FileOutputStream fout = new FileOutputStream("/path/to/store/image.jpg"); 
      int i; 
      while ((i = dis.read()) > -1) { 
       fout.write(i); 
      } 

      fout.flush(); 
      fout.close(); 
      dis.close(); 
      clientSocket.close(); 
     } 
} 

Not bu sunucu yöntemi listenForFile() çağrılmalıdır. Ve serverPort her iki tarafta da aynı olmalıdır.

+0

Üzgünüm bu kod çalışmıyor. Bu istemciden sunucuya resim göndermek ama daha iyi performans için BufferedOutputStream/BufferedInputStream bunu sarın –

+0

sunucu sisteminde görülemez. – Milde

+0

Kendinden yazılı sunucu –

İlgili konular