c# - 我如何比较 byte[] 和字符串?

标签 c# string arrays

我想将 byte[] 中的前几个字节与字符串进行比较。我该怎么做?

最佳答案

您必须知道字节数组的编码才能正确比较它们。

例如,如果您知道您的字节数组是由 UTF-8 字节组成的,那么您可以从该字节数组创建一个字符串:

System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
string s = enc.GetString(originalBytes);

现在您可以将字符串 s 与您的其他字符串进行比较。

相反,如果只想比较前几个字节,可以将字符串转换成UTF8字节数组:

System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
byte[] b = enc.GetBytes(originalString);

现在您可以将字节数组 b 与您的其他字节数组进行比较。

ASCII、Unicode 等还有其他几种编码对象。See the MSDN page here.

关于c# - 我如何比较 byte[] 和字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1096004/

相关文章:

c# - 无法写入 html5 "date"类型的 asp.net 文本框控件

C#解析带有ajax加载内容的网站

c# - 基于 .net 的帮助和支持/知识库

c# - .Net 中的字符串比较 : "+" vs "-"

php比较每个数组中的值

c# - 存储数据库项目先前状态的最佳方式

javascript - 将数组拆分为 100 个 Javascript 的多个字符串

arrays - 如何解析来自 Observable 的 Float() 字符串?

python - 计算星期几的程序

string - R中的算法/代码从字符串中的任何位置查找模式