2011-08-19 69 views
0

我有一個java服務器,可以發送任何類型的文件,但我無法管理髮送一個字符串或整數。從java服務器發送整數或字符串

以下是如何發送文件的示例。

File f = new File("/Users/Large/Downloads/android.jpg"); 
FileInputStream fis = null; 
int size = (int)f.length(); 
byte[] bytes = new byte[size]; 
fis = new FileInputStream(f); 
fis.read(bytes); 

System.out.println("entro..."); 
out.write(bytes); 
out.flush(); 
+6

究竟是什麼問題? –

+0

又是什麼問題? – Bitmap

+1

@drizzom:請發送與您的問題相關的代碼,嘗試發送一個字符串或整數。我們感興趣的是什麼*不*工作,不是什麼有效=) – maerics

回答

2

嘗試用這些例子中使用的StringByteBuffer類:

// A string ("Hello, World"). 
out.write("Hello, World".getBytes()); 

// An integer (123). 
out.write(ByteBuffer.allocate(4).putInt(123).array()); 

注意更換您的來電out.write(bytes),在某些時候,你需要關心endiannesscharacter encoding有什麼東西在另一端以可靠的方式讀取這些值。

+0

Tkx它的作品! – drizzom

+0

如果我想發送一個字符串數組,你有什麼想法嗎?再次感謝。 – drizzom

+0

@drizzom:最好開始一個關於如何編寫字符串/整數數組的新問題,而不是試圖在這裏寫出它。 – maerics

相關問題