PTT編碼 - Linux

By Daph Bay 
at 2014-08-20T12:12
at 2014-08-20T12:12
Table of Contents
其實不知道該發在哪個板…但我記得GOOGLE相關問題時有看過LINUX板的文章, 
所以就發在這了
 
最近在寫個讀PTT資料的程式,光在登入畫面我就不行了,讀出來的都是亂碼。經過無數
小時的努力,才發現PTT是用BIG5-UAO編碼。好,知道編碼就行。還好網路上也找的到
BIG5-UAO轉UNICODE的表(跟英文比要找中文資料真是無敵超級難,而且感覺有隨時沒資
料的可能)。
 
第一個困難點是,當我一個byte一個byte讀登入畫面的資料時,發現ASCII
和BIG5-UAO是混在一串的,ASCII一個字是1 byte,BIG5-UAO一個字是2 bytes。
但還好他們二個低位元的數值沒有重覆(在表裡面是這樣的),我可以先只讀一個位元
來判斷目前的值是不是ASCII,如果是就直接顯示,不是的話就和下個位元合在一起去
查BIG5-UAO轉UNICODE的表。
 
但傷腦筋的來了,讀到後來資料裡竟然有不在BIG5-UAO也不是ASCII的位元,請問
我該怎麼辦? 這個怪東西是 0x50A1。難道我哪裡搞錯了嗎?
 
--
    所以就發在這了
最近在寫個讀PTT資料的程式,光在登入畫面我就不行了,讀出來的都是亂碼。經過無數
小時的努力,才發現PTT是用BIG5-UAO編碼。好,知道編碼就行。還好網路上也找的到
BIG5-UAO轉UNICODE的表(跟英文比要找中文資料真是無敵超級難,而且感覺有隨時沒資
料的可能)。
第一個困難點是,當我一個byte一個byte讀登入畫面的資料時,發現ASCII
和BIG5-UAO是混在一串的,ASCII一個字是1 byte,BIG5-UAO一個字是2 bytes。
但還好他們二個低位元的數值沒有重覆(在表裡面是這樣的),我可以先只讀一個位元
來判斷目前的值是不是ASCII,如果是就直接顯示,不是的話就和下個位元合在一起去
查BIG5-UAO轉UNICODE的表。
但傷腦筋的來了,讀到後來資料裡竟然有不在BIG5-UAO也不是ASCII的位元,請問
我該怎麼辦? 這個怪東西是 0x50A1。難道我哪裡搞錯了嗎?
--
Tags:
        Linux
        
All Comments

By Elma 
at 2014-08-23T10:59
at 2014-08-23T10:59

By Michael 
at 2014-08-25T00:54
at 2014-08-25T00:54

By Brianna 
at 2014-08-29T06:40
at 2014-08-29T06:40

By Annie 
at 2014-09-01T11:04
at 2014-09-01T11:04

By Madame 
at 2014-09-03T13:16
at 2014-09-03T13:16

By Poppy 
at 2014-09-08T09:04
at 2014-09-08T09:04

By Erin 
at 2014-09-10T23:47
at 2014-09-10T23:47

By Valerie 
at 2014-09-14T22:31
at 2014-09-14T22:31

By Adele 
at 2014-09-17T02:21
at 2014-09-17T02:21

By Tom 
at 2014-09-17T19:04
at 2014-09-17T19:04

By Irma 
at 2014-09-19T15:53
at 2014-09-19T15:53

By Edward Lewis 
at 2014-09-19T19:05
at 2014-09-19T19:05

By Charlotte 
at 2014-09-24T06:22
at 2014-09-24T06:22

By Edith 
at 2014-09-27T04:29
at 2014-09-27T04:29

By Dinah 
at 2014-09-28T10:05
at 2014-09-28T10:05

By John 
at 2014-09-29T19:53
at 2014-09-29T19:53

By Barb Cronin 
at 2014-09-30T15:54
at 2014-09-30T15:54

By Selena 
at 2014-10-04T21:23
at 2014-10-04T21:23

By Mason 
at 2014-10-08T02:26
at 2014-10-08T02:26

By Franklin 
at 2014-10-12T13:58
at 2014-10-12T13:58

By Franklin 
at 2014-10-13T11:33
at 2014-10-13T11:33

By Dinah 
at 2014-10-13T23:47
at 2014-10-13T23:47

By Steve 
at 2014-10-17T23:44
at 2014-10-17T23:44
Related Posts
關於桌電使用DLNA傳輸聲音至目標設備...

By Puput 
at 2014-08-19T22:42
at 2014-08-19T22:42
關於桌電使用DLNA傳輸聲音至目標設備...

By William 
at 2014-08-19T22:12
at 2014-08-19T22:12
關於shutdown執行權限

By Daniel 
at 2014-08-19T17:19
at 2014-08-19T17:19
請推薦CentOS 5.10 可完美支援的網卡

By Connor 
at 2014-08-19T15:21
at 2014-08-19T15:21
畫面變這樣?

By Enid 
at 2014-08-19T02:55
at 2014-08-19T02:55