2012-09-18 23 views
-4

我正在開發一個小型項目,它應該是類似於通過藍牙的遠程文件瀏覽器。Android開發 - Java:我如何從文件製作字節數組並返回

我有這樣的文件:

File directory = Environment.getExternalStorageDirectory(); 

我需要從這個文件的字節數組將其發送到第二個電話。

任何人都可以寫我的代碼嗎?謝謝,對不起,我的英語:)

+0

你嘗試過什麼?你有沒有任何類型的包可以將藍牙IO導入到你的Java文件中? – Makoto

+0

有人能寫我的代碼不是問問題的好方法,在你提出一個你必須嘗試過的問題之前,也沒有做好這個任務本身,你應該發佈你已經嘗試過的以及失敗的方法。 –

回答

1
FileInputStream fis = new ....; 
     ByteArrayOutputStream bos = new ByteArrayOutputStream(); 
     byte[] buffer = new byte[1024]; 
     int readBytes = 0; 
     while(readBytes != -1) 
     { 
      readBytes = fis.read(buffer); 
      if(readBytes > 0) 
      { 
       bos.write(buffer, 0, readBytes); 
      } 
      else 
       break; 
     } 
     byte[] fileData = bos.toByteArray(); 

希望它可以幫助

+0

下投票接受 \t 的FileInputStream FIS =新......; ByteArrayOutputStream bos = new ByteArrayOutputStream(); byte [] buffer = new byte [1024]; int readBytes = 0; while(readBytes!= -1) { readBytes = fis.read(buffer); if(readBytes> 0) { bos.write(buffer,0,readBytes); } else break; } byte [] fileData = bos.toByteArray(); 希望它有幫助 – user1681497

+0

這是行不通的,我需要使目錄的字節數組不是具體的文件。這裏是錯誤:java.io.FileNotFoundException:/ mnt/sdcard(是一個目錄) – user1681497

+0

目錄是邏輯結構,沒有物理存在。它可以包含一個或多個文件或目錄。要爲目錄中的所有文件創建字節數組,您需要爲目錄中的單個文件執行此操作。查看http://docs.oracle.com/javase/7/docs/api/java/io/File.html關於如何完成的java文檔。另請參閱http://docs.oracle.com/javase/7/docs/api/java/util/zip/ZipOutputStream.html。我相信這是你想要的... –

相關問題