我有一个字符串:

LogoDataStr = "ABC0000"


我想转换为ASCII字节,结果应为:

LogoDataBy[0] = 0x41;
LogoDataBy[1] = 0x42;
LogoDataBy[2] = 0x43;
LogoDataBy[3] = 0x30;
LogoDataBy[4] = 0x30;
LogoDataBy[5] = 0x30;
LogoDataBy[6] = 0x30;


我尝试过使用这种方式:

byte[] LogoDataBy = ASCIIEncoding.ASCII.GetBytes(LogoDataStr);


但是我得到的结果是这样的:

LogoDataBy[0] = 0x41;
LogoDataBy[1] = 0x42;
LogoDataBy[2] = 0x43;
LogoDataBy[3] = 0x00;
LogoDataBy[4] = 0x00;
LogoDataBy[5] = 0x00;
LogoDataBy[6] = 0x00;


我的编码有问题吗?

最佳答案

此代码

class Program
{
    static void Main(string[] args)
    {
        byte[] LogoDataBy = ASCIIEncoding.ASCII.GetBytes("ABC000");
    }
}


产生预期的产出



在读取ASCII字节之前,请仔细检查您的代码和字符串的值。

关于c# - C#将字符串转换为ASCII字节,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12490507/

10-10 21:31