這篇文章主要介紹“怎么理解Java字符編碼”,在日常操作中,相信很多人在怎么理解Java字符編碼問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么理解Java字符編碼”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)公司服務(wù)項目包括正安網(wǎng)站建設(shè)、正安網(wǎng)站制作、正安網(wǎng)頁制作以及正安網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,正安網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到正安省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
在計算機中,任何的文字都是以指定的編碼方式存在的,在 Java 程序的開發(fā)中最常見的是 ISO8859-1、GBK/GB2312、Unicode、 UTF 編碼。
(1)ISO8859-1:屬于單字節(jié)編碼,最多只能表示 0~255 的字符范圍。
(2)GBK/GB2312:中文的國標編碼,用來表示漢字,屬于雙字節(jié)編碼。GBK 可以表示簡體中文和繁體中文,而 GB2312 只能表示簡體中文。GBK 兼容 GB2312。
(3)Unicode:是一種編碼規(guī)范,是為解決全球字符通用編碼而設(shè)計的。UTF-8 和 UTF-16 是這種規(guī)范的一種實現(xiàn),此編碼不兼容 ISO8859-1 編碼。Java 內(nèi)部采用此編碼。
(4)UTF:UTF 編碼兼容了 ISO8859-1 編碼,同時也可以用來表示所有的語言字符,不過 UTF 編碼是不定長編碼,每一個字符的長度為 1~6 個字節(jié)不等。一般在中文網(wǎng)頁中使用此編碼,可以節(jié)省空間。
如果在程序中處理不好字符編碼,就有可能出現(xiàn)亂碼問題。例如現(xiàn)在本機的默認編碼是 GBK,但在程序中使用了 ISO8859-1 編碼,則就會出現(xiàn)字符的亂碼問題。就如同兩個不同國家的人用自己的母語交流,語言不同就無法溝通。所以為了避免產(chǎn)生亂碼,程序編碼應(yīng)與本地的默認編碼保持一致。
public static Properties getProperty() //可以查看當前系統(tǒng)使用默認編碼
代碼示例:
public static void main(String[] args) {
// 獲取當前系統(tǒng)編碼
System.out.println("系統(tǒng)默認編碼:" + System.getProperty("file.encoding"));
}
編碼錯誤案例:
public class Test {
public static void main(String[] args) throws Exception {
File f = new File("D:" + File.separator + "test.txt");
// 實例化輸出流
OutputStream out = new FileOutputStream(f);
// 指定ISO8859-1編碼
byte b[] = "C語言中文網(wǎng),你好!".getBytes("ISO8859-1");
// 保存轉(zhuǎn)碼之后的數(shù)據(jù)
out.write(b);
// 關(guān)閉輸出流
out.close();
}
}
運行結(jié)果如下:
由此可見,由于編碼不一致,所以在保存時出現(xiàn)了亂碼。
到此,關(guān)于“怎么理解Java字符編碼”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
當前名稱:怎么理解Java字符編碼
瀏覽地址:http://www.rwnh.cn/article2/gpogic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、網(wǎng)站制作、網(wǎng)站導(dǎo)航、搜索引擎優(yōu)化、網(wǎng)站排名、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)