2012-03-05 106 views
-1

我試圖通過socketchannel傳輸圖像文件,但它不在服務器端讀取。我該怎麼辦?如何通過NIO中的SocketChannel發送和接收對象

+1

爲什麼要將圖像文件作爲序列化的「對象」發送?難道你只是想要原始字節? – aroth 2012-03-05 05:44:49

+2

你的問題超出了範圍,因爲你沒有提供任何人可以根據答案的細節。請閱讀[常見問題]並[請]瞭解在SO上發佈的指南。 – 2012-03-05 06:07:04

+1

歡迎使用堆棧溢出。請閱讀[如何問](http://stackoverflow.com/questions/how-to-ask),[你有什麼嘗試?](http://mattgemmell.com/2008/12/08/what-have - 你試過/),和[如何問問題的智能方式](http://catb.org/esr/faqs/smart-questions.html)。 – 2012-03-05 08:43:17

回答

1

您可以將圖像作爲字節流傳輸。

InputStream input=new FileInputStream("image.png"); 
byte[] buffer=new byte[1024]; 
int readData; 
while((readData=input.read(buffer))!=-1){ 
socketOutput.write(buffer,0,readData); 
} 
0

根據您在這裏得到的信息,您只能得出結論。

  • 該問題需要更好地瞭解哪裏出了問題。
  • 您需要修復程序中的錯誤,例如,使用調試器。
  • 您的配置錯誤。檢查你的發送者和接收者可以連接/對話,並且沒有防火牆。
+0

thanx的建議。實際上我是使用NIO建立聊天應用程序,我想將文檔從一個用戶轉移到另一個用戶 – Vinay 2012-03-05 13:12:51

+0

因此,當您創建一個簡單的測試時,一個線程正在發送,另一個正在接收發生的事情? – 2012-03-05 13:16:03