Cam*_*ron 12
您可以使用Encoding例如UTF-8 将字符串编码为按字节表示:
var str = "Out of cheese error";
var bytes = Encoding.UTF8.GetBytes(str);
Run Code Online (Sandbox Code Playgroud)
要获取.NET字符串对象:
var strAgain = Encoding.UTF8.GetString(bytes);
// str == strAgain
Run Code Online (Sandbox Code Playgroud)
你似乎希望表示为一系列'1'和'0'字符; 我不确定你为什么这样做,但这也是可能的:
var binStr = string.Join("", bytes.Select(b => Convert.ToString(b, 2)));
Run Code Online (Sandbox Code Playgroud)
编码采用抽象字符串(在某种意义上它们是一系列Unicode代码点的不透明表示),并将它们映射到一系列具体的字节.没有编码,字节是没有意义的(再次,因为它们是不透明的).但是,通过编码,它们可以变回字符串.
你似乎把"ASCII"和字符串混在一起; ASCII只是一种编码,只处理高达128的代码点'é'.例如,如果你有一个包含一个字符串的字符串,它没有ASCII表示,所以大多数肯定不能使用一系列ASCII字节表示,即使它可以在.NET string对象中安静地存在.
请参阅Joel Spolsky撰写的这篇文章以供进一步阅读.
| 归档时间: |
|
| 查看次数: |
7781 次 |
| 最近记录: |