如何把GBK内码转换成汉字。

比如‘好’的GBK内码是‘BAC3’,用JAVA如何使控制台输出的是‘好'。有一个字符串‘=BA=C3',使控制台输出的是‘好’。... 比如‘好’的GBK内码是‘BAC3’,用JAVA如何使控制台输出的是‘好'。
有一个字符串‘=BA=C3',使控制台输出的是‘好’。
展开
 我来答
如梦★初醒℃
推荐于2017-09-12 · TA获得超过346个赞
知道小有建树答主
回答量:293
采纳率:66%
帮助的人:183万
展开全部
这个BA、C3是十六进制的数据,你可以自己先把它转换为10进制,得到两个byte型的数字,把这两个数字放到一个byte数组里,然后构造成字符串。如下:
BA => -70
C3 => -61
上面这两步要自己算……
然后:byte[] b = {-70,-61};
String s = new String(b,"GBK");
这样s就是你要的结果了。
琉璃易碎smile
推荐于2017-09-21 · TA获得超过1.6万个赞
知道大有可为答主
回答量:4789
采纳率:92%
帮助的人:323万
展开全部
代码如下:
private void btnconvert_Click(object sender, EventArgs e)
{
string sSou = txtyuanwenjian.Text;
Encoding CnEnconding = Encoding.GetEncoding("GB2312");
byte[] bSou = CnEnconding.GetBytes(sSou); //转成数组
for (int i = 0; i < bSou.Length; i++)
{
string strvalue = convertting(bSou[i].ToString(), 10, 2);
if (strvalue.Length <= 8)
{
int cha = 8 - strvalue.Length ;
for (int j = 0; j < cha; j++)
{
strvalue = strvalue.Insert(0, "0");
}
}
txtzhuanhuan.Text = txtzhuanhuan.Text + strvalue; //依次取得
} public string convertting(string value, int baseform, int tobase)
{
long intvalue = Convert.ToInt64(value, baseform);
return Convert.ToString(intvalue, tobase);
}
private void button1_Click(object sender, EventArgs e)
{
string str2 = txtzhuanhuan.Text.Trim();
for (int x = 0; x < str2.Length; x++)
{
if (str2.Substring(0, 1) == "0")
{
string str0 = str2.Substring(x, 8);
string shijinzhi = convertting(str0, 2, 10);
txtchar.Text = txtchar.Text + Convert.ToChar(Convert.ToInt32(shijinzhi)).ToString();
x = x + 7;
}
else
{
string str0 = str2.Substring(x, 16);
string shijinzhi = convertting(str0, 2, 10);
txtchar.Text = txtchar.Text + Convert.ToChar(Convert.ToInt32(shijinzhi));
x = x + 15;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小狂中E
2013-09-10 · TA获得超过1418个赞
知道大有可为答主
回答量:1514
采纳率:66%
帮助的人:1034万
展开全部
String s = "BAC3";
byte[] buf = new byte[2];
buf[0] = (byte)Integer.parseInt( s.substring(0,2), 16 );
buf[1] = (byte)Integer.parseInt( s.substring(2,4), 16 );
System.out.println( new String(buf,"GBK") );
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式