Java自動獲取檔案和檔案流編碼

2021-08-04 08:57:38 字數 642 閱讀 8060

在讀取檔案時,如果不清楚檔案編碼或者在不同的編碼環境拷貝檔案,這時中文資料很可能會出現亂碼,參考了部落格:有了如下的**:

/**

* 檢測檔案的編碼和文字流的編碼

* 參考:

* @author administrator

* */

public class cpdetectorutils

/*** 根據"encodetype"獲取文字編碼或檔案流編碼

*/public string getfileorioencode(string path,string encodetype)

} catch (ioexception e)

return charset.name(); }

@test

public void test()

}

測試結果如下:

檔案編碼: gb2312

檔案流編碼: gb2312

尤其要注意在獲取檔案流編碼時,過載方法detector.detectcodepage(new bufferedinputstream(new fileinputstream(file)),128);的第乙個引數必須是包裝的高階流,如果是fileinputstream會包引數異常錯誤.

檔案和檔案流

12.1 c 檔案流的基本概念 12.1.1檔案及及分類 1.程式檔案 包括源程式檔案 字尾名.cpp 目標檔案 字尾為.obj 可執行檔案 字尾名.exe 這類檔案包含的是文字和二進位制程式 2.資料檔案 檔案的內容不是程式,而是供程式讀寫的資料。12.1.2 c 檔案流基礎 1.ifstream...

檔案流和 檔案描述符

include apue.h int glob 6 int main void else if pid 0 i printf pid d,glob d,var d n getpid glob,var sprintf buf,d n i write stdout fileno,buf,strlen b...

檔案流和檔案描述符

檔案流和檔案描述符 檔案流和 檔案描述符 2011 10 19 16 08 apue 中的一道課後題 習題8.1 include apue.h int glob 6 int main void else if pid 0 i printf pid d,glob d,var d n getpid gl...