如何判断一段文本是国标(GB)码还是大五码(BIG5)
编号:QA000541
建立日期: 1999年2月22日 最后修改日期:1999年2月22日
所属类别:
白凯华:
如何判断一段文本是国标(GB)码还是大五码(BIG5)。
回答:
一般是这样辨别的:
1. GB code的内码的两个字节都是从A0H - FEH之间的
2. BIG code 的内码的第一个字节是80H - FFH,第二个字节是00H - FFH
所以,你要浏览全文,看看是否有第二个字节是小于7FH的汉字,如果有的话,一般是BIG code的。当然也有特殊情况,不过非常少见的。
'判断一段文字中是否含有BIG5码汉字 , 可用做内码的自动识别
'返回True表示包含BIG5码
'返回False表示不含BIG5码 , 这段文字一般可认为是GB码
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function CheckBIG(strSource As String) As Boolean
Dim idx As Long
Dim ByteTemp() As Byte
CheckBIG = False
For idx = 1 To Len(strSource)
ByteTemp = StrConv(Mid(strSource, idx, 1), vbFromUnicode)
If UBound(ByteTemp) > 0 Then
If ByteTemp(1) >= 64 And ByteTemp(1) <= 126 Then
CheckBIG = True
Exit For
End If
End If
Next
End Function
此问题由TangCheng回答。
| |
|
|
| |
|
|