汉字:专家称近期气温以偏低为主,是否“寒冬”不能确定编码:
4e135bb679f08fd1671f6c146e294ee5504f4f4e4e3a4e3bff0c662f5426201c5bd251ac201d4e0d80fd786e5b9a
------------------
请问这个是什么编码,我能得到编码,怎么转成汉字?多谢!
4e135bb679f08fd1671f6c146e294ee5504f4f4e4e3a4e3bff0c662f5426201c5bd251ac201d4e0d80fd786e5b9a
------------------
请问这个是什么编码,我能得到编码,怎么转成汉字?多谢!
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
byte[] b = System.Text.Encoding.BigEndianUnicode.GetBytes("专家称近期气温以偏低为主,是否“寒冬”不能确定");
Console.WriteLine(string.Join("", b.Select(x => x.ToString("x").PadLeft(2, '0'))));
}
}
}4e135bb679f08fd1671f6c146e294ee5504f4f4e4e3a4e3bff0c662f5426201c5bd251ac201d4e0d
80fd786e5b9a
Press any key to continue . . .
请问怎么反转?我有unicode,想转成汉字
我用什么编码转成byte数组呢?GBK?
不是告诉你了么,是BigEndianUnicode
string unicode = "4e135bb679f08fd1671f6c146e294ee5504f4f4e4e3a4e3bff0c662f5426201c5bd251ac201d4e0d80fd786e5b9a";
byte[] bytes = Encoding.BigEndianUnicode.GetBytes(unicode);
var result1 = System.Text.UnicodeEncoding.BigEndianUnicode.GetString(bytes, 0, bytes.Length);你看吧,不行
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
byte[] bytes = { 0x4e, 0x13, 0x5b, 0xb6, 0x79, 0xf0, 0x8f, 0xd1, 0x67, 0x1f, 0x6c, 0x14, 0x6e, 0x29, 0x4e, 0xe5, 0x50, 0x4f, 0x4f, 0x4e, 0x4e, 0x3a, 0x4e, 0x3b, 0xff, 0x0c, 0x66
, 0x2f, 0x54, 0x26, 0x20, 0x1c, 0x5b, 0xd2, 0x51, 0xac, 0x20, 0x1d, 0x4e, 0x0d,
0x80, 0xfd, 0x78, 0x6e, 0x5b, 0x9a };
var result1 = System.Text.UnicodeEncoding.BigEndianUnicode.GetString(bytes, 0, bytes.Length);
Console.WriteLine(result1);
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string s = "4e135bb679f08fd1671f6c146e294ee5504f4f4e4e3a4e3bff0c662f5426201c5bd251ac201d4e0d80fd786e5b9a";
byte[] bytes = Regex.Matches(s, "[0-9a-fA-F]{2}").Cast<Match>().Select(x => (byte)Convert.ToInt16("0x" + x.Value, 16)).ToArray();
var result1 = System.Text.UnicodeEncoding.BigEndianUnicode.GetString(bytes, 0, bytes.Length);
Console.WriteLine(result1);
}
}
}
我通常的转法
byte[] array = new byte[s.Length / 2];
for (int i = 0; i < s.Length / 2; i++)
{
string str = s.Substring(i, 2);
array[i] =(byte)Convert.ToInt32(str ,16);;
}
从没想过还能有这种写法