这是我的一个游戏修改器中繁简转换的代码,或许对你有用:Public Class CMain
Public Shared Function Big5ToGb2312(ByVal ba() As Byte) As String
Dim gb2312 As System.Text.Encoding = System.Text.Encoding.GetEncoding("GB2312")
Dim big5 As System.Text.Encoding = System.Text.Encoding.GetEncoding("BIG5")
ba = System.Text.Encoding.Convert(big5, gb2312, ba)
Dim s As String
s = gb2312.GetString(ba)
s = s.TrimEnd(New Char() {ControlChars.NullChar})
s = StrConv(s, VbStrConv.SimplifiedChinese)
Return s
End Function Public Shared Function Gb2312ToBig5(ByVal s As String) As Byte()
s = StrConv(s, VbStrConv.TraditionalChinese)
Dim gb2312 As System.Text.Encoding = System.Text.Encoding.GetEncoding("GB2312")
Dim big5 As System.Text.Encoding = System.Text.Encoding.GetEncoding("BIG5")
Dim ba() As Byte = gb2312.GetBytes(s)
ba = System.Text.Encoding.Convert(gb2312, big5, ba)
Return ba
End Function
End Class
Public Shared Function Big5ToGb2312(ByVal ba() As Byte) As String
Dim gb2312 As System.Text.Encoding = System.Text.Encoding.GetEncoding("GB2312")
Dim big5 As System.Text.Encoding = System.Text.Encoding.GetEncoding("BIG5")
ba = System.Text.Encoding.Convert(big5, gb2312, ba)
Dim s As String
s = gb2312.GetString(ba)
s = s.TrimEnd(New Char() {ControlChars.NullChar})
s = StrConv(s, VbStrConv.SimplifiedChinese)
Return s
End Function Public Shared Function Gb2312ToBig5(ByVal s As String) As Byte()
s = StrConv(s, VbStrConv.TraditionalChinese)
Dim gb2312 As System.Text.Encoding = System.Text.Encoding.GetEncoding("GB2312")
Dim big5 As System.Text.Encoding = System.Text.Encoding.GetEncoding("BIG5")
Dim ba() As Byte = gb2312.GetBytes(s)
ba = System.Text.Encoding.Convert(gb2312, big5, ba)
Return ba
End Function
End Class
大家研究一下,虽然笨了点,但是还很好用,简单啊.我还没在繁体上试过,明天试试先.