取得中文內碼表 來源:Tommy
所謂的中文內碼不過是 ASCII 字元的組合值, 中文字 BIG5 以兩個 ASCII
字元組合而成, 就像是 SHORT, 或 INTEGER 短整數是兩 Bytes 一樣.
但是中文的兩 Bytes 組合因為想混用英文顯示, 所以做了特殊編排.

另外中文兩 Bytes 組合有別稱, 前面字元稱 High Byte, 後面字元稱 Low Byte.
所以只要你知道中文 High/Low byte 的範圍, 簡單的以雙迴圈產生那兩個 ASCII 值,
再開檔丟出去即可.

所以, 將底下的程式: 丟給 QB 或貼在 VB form_load 函數中執行一下,
再到 c:\ 下撿檔案 B5Tab.txt.

至於中文系統怎麼辨認是中文或英文? 那就是倚賴中文字永遠以 &H81 起始.
只要看到檔案行中有這個值 &H81, 便把連續的兩 Bytes 視為中文解釋.
中文系統抓出這兩 Bytes, 再自行查表找點陣資料, 最後在銀幕上相同的位置
秀出中文字點陣. 這就完成中文顯示.

DEFINT A-Z

 '  高位元組(High Byte): &H81 - &HFE
 '  低位元組(Low  Byte): &H40 - &H7E,  &HA1 - &HFE

    FileName$ = "c:\B5Tab.txt"
    FOOut = FREEFILE
    OPEN FileName$ FOR OUTPUT AS #FOOut

    cnt& = 0
    FOR i = &H81 TO &HFE
        FOR lo = &H40 TO &H7E
            cnt& = cnt& + 1
            IF cnt& >= 5025 THEN PRINT #FOOut, CHR$(i); CHR$(lo)
        NEXT lo
        FOR lo = &HA1 TO &HFE
            cnt& = cnt& + 1
            IF cnt& >= 5025 THEN PRINT #FOOut, CHR$(i); CHR$(lo)
        NEXT lo
    NEXT i

    CLOSE #FOOut
    END

小恐龍工作坊 提供