上網查詢,原來Big5在標準中是沒有以下幾個字 碁、銹、恒、裏、墻、粧、嫺 , 這些是在
倚天Big5延伸 才有加入。─資料來源wiki
以下是一個含有上述字的檔案
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=MS950">
<title>
big5中文測試
</title>
<link href="fidbweb_style.css" rel="stylesheet" type="text/css" />
</head>
<body topmargin="0" leftmargin="0">
碁、銹、恒、裏、墻、粧、嫺
</font></b> <font color="#333399" size="2">big5中文測試</font></td>
</body>
</html>
如果我們用以下程式讀取這個檔案
URL url = new URL(factoryUrl); BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream(), "BIG5")); String str; while ((str = br.readLine()) != null) { System.out.println(str); }
結果將會如下
爬文之後,找到一個解法,只要修改一行程式, 改用香港增補字符集(Hong Kong Supplementary Character Set,簡稱HKSCS)
//BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream(), "BIG5")); BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream(), "Big5_HKSCS"));執行結果如下
如果還有遇到其他的解法,請告訴我。
沒有留言:
張貼留言