首頁  >  文章  >  Java  >  java pdf中文亂碼怎麼辦

java pdf中文亂碼怎麼辦

藏色散人
藏色散人原創
2020-04-07 09:35:083428瀏覽

java pdf中文亂碼怎麼辦

java pdf中文亂碼怎麼辦?

解決javapdf匯出文件,中文亂碼和資料錯位的問題

推薦教學:《java學習

       先說中文亂碼問題,javapdf內部使用的是ISO-8859-1編碼,而通常我們的資料庫編碼是UTF-8或GBK,如果在javapdf寫入之前不進行轉碼,會出現導出的檔案中文亂碼,所以在遍歷每個欄位的資料時要加上該條碼

 if(object instanceof String){  
         object = new String(((String)object).getBytes("GBK"),"ISO-8859-1");  
}

 這裡的GBK是資料所在資料庫的編碼,依照自己的狀況變化。

       再說說資料錯位,因為pdf支援的最大欄位長度只有255,所以在你傳入的欄位長度大於255時,javapdf會跟你作一個%6的運算,來確保欄位長度小於256 ,而資料錯位通常是由於這個運算操作引起的,所以我們只能在代碼端控制傳入的字段資料長度,進行適當截取,保證你轉入的字段長度不能大於255的同時,保證你的字段數據也不會大於255,中文要除2。

以上是java pdf中文亂碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn