2011-12-27 77 views

回答

1

使用FileOutputStream及其write(byte[])方法

#假如你已經被數據內容是準備在PDF

writen也有可用於Android

一些PDF作家API見

+0

您好Jigar,我嘗試這個代碼FileOutputStream中fileos =新FileOutputStream中( 「Hello.pdf」); 但是當我試圖打開這個文件時,我收到一個錯誤,說Adobe Reader無法打開Hello.pdf,因爲它不是受支持的文件類型,或者是因爲文件已損壞...... – Taruni 2011-12-27 12:16:33

+0

_假設您有數據準備在PDF_中寫入的內容,請參閱更新 – 2011-12-27 12:21:14

2

試試這個代碼,它爲我工作。

File dir = Environment.getExternalStorageDirectory(); 

File assist = new File("/mnt/sdcard/Sample.pdf"); 
try { 
    InputStream fis = new FileInputStream(assist); 

    long length = assist.length(); 
    if (length > Integer.MAX_VALUE) { 
     Log.e("Sorry! Your given file is too large.","cannnottt readddd"); 
    } 
    byte[] bytes = new byte[(int)length]; 
    int offset = 0; 
    int numRead = 0; 
    while (offset < bytes.length && (numRead=fis.read(bytes, offset, bytes.length-offset)) >= 0) { 
     offset += numRead; 
    } 

    File data = new File(dir,"mydemo.pdf"); 
    OutputStream op = new FileOutputStream(data); 
    op.write(bytes); 

創建的mydemo.pdf將存儲在您的SD卡上。

+0

上述代碼中的更正爲File assist = new File(「/ mnt/sdcard」); – Taruni 2011-12-28 06:40:14

+0

當我試圖打開這個文件時,我是一個錯誤,說Adobe Reader無法打開該文件,因爲它不是受支持的文件類型,或者是因爲文件已損壞。 – Taruni 2011-12-28 06:45:43

0

您可以使用Common IO庫來幫助簡單地從文件轉換爲字節數組或從字節數組轉換爲文件。

File mFile = new File(filePath); 
    FileUtils.writeByteArrayToFile(mFile, yourArray); 
相關問題