C# 无法将字符串转换为字节数组以达到所需的结果?

标签 c# string arrays

我有一个只存储 1 和 0 的字符串..现在我需要将它转换为字节数组。我尝试过..

System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
                        byte[] d = encoding.GetBytes(str5[1]);

但是它给了我 ASCII 的字节数组,比如 48 和 49,但我想在我的字节数组中包含 1 和 0 ..任何人都可以帮忙

最佳答案

这是编码的正确结果。编码产生字节,而不是。如果您需要,则使用按位运算符来检查每个字节。即

foreach(var byte in d) {
    Console.WriteLine(byte & 1);
    Console.WriteLine(byte & 2);
    Console.WriteLine(byte & 4);
    Console.WriteLine(byte & 8);
    Console.WriteLine(byte & 16);
    Console.WriteLine(byte & 32);
    Console.WriteLine(byte & 64);
    Console.WriteLine(byte & 128);
}

关于C# 无法将字符串转换为字节数组以达到所需的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12531619/

相关文章:

c# - EF将重复记录添加到查找/引用表中

c# - 有什么方法可以使用 Stream.CopyTo 只复制一定数量的字节?

java - 如何解析计算器项目中的操作数和运算符?

c# - 具有多个服务契约(Contract)的单个端点

java - 在pdf中以小字体打印子字符串

objective-c - 在 C for iOS 项目中,我应该使用什么类型的文件名字符串?

java - 尝试解析数组时出现空指针异常(java)

java - 如何使用类定义的数组并向其添加值(预定义参数)?

Javascript 数组到 php 的 post

c# - 处理带有动态列的表的最佳方法