当前位置: 首页 > 编程语言 > C#

字符串到原始字节数组共享

时间:2023-04-10 15:43:54 C#

String到原始字节数组我有一个包含二进制数据(不是文本数据)的字符串。如何将其转换为原始字节数组?C#中的字符串-根据定义-不包含二进制数据。它由一系列Unicode字符组成。如果您的字符串仅包含ASCII(7位)字符集中的Unicode字符,您可以使用Encoding.ASCII将字符串转换为字节:byte[]result=Encoding.ASCII.GetBytes(input);如果您的字符串包含u0000-u00ff范围内的Unicode字符并且您想将它们解释为字节,则可以将字符转换为字节:byte[]result=newbyte[input.Length];for(inti=0;i将二进制数据存储在字符串中是一个非常糟糕的主意。但是,如果绝对必须,可以使用1252代码页将二进制字符串转换为字节数组。不要使用代码页0,否则你将在外语工作时丢失一些值。碰巧,代码页1252正确地将所有字节值从0到255转换为Unicode并再次转换回来。有一些写得不好的VB6程序使用二进制字符串。不幸的是,有些代码行很多,而且几乎不可能一次将它们全部转换为byte()数组。你已经被警告过。使用后果自负:DimbData()AsByteDimsDataAsString'将二进制字符串转换为字节数组bData=System.Text.Encoding.GetEncoding(1252).GetBytes(sData)'将字节数组转换为二进制字符串sData=System.Text.Encoding.GetEncoding(1252).GetString(bData)这是一种方式:publicstaticbyte[]StrToByteArray(stringstr){System.Text.ASCIIEncodingencoding=newSystem.Text.ASCIIEncoding();返回编码。获取字节(海峡);}System.Text.ASCIIEncoding编码=newSystem.Text.ASCIIEncoding();byte[]theBytes=encoding.GetBytes("SomeString");请注意,您可能还想使用其他编码格式。以上就是C#学习教程的全部内容:字符串转原始字节数组。如果对您有用,需要进一步了解C#学习教程,希望您多多关注---本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: