如何将字符串转换为UTF8?

我有一个包含一些unicode的字符串,如何将其转换为UTF-8编码?

此代码段使用UTF-8编码的字符串生成一个字节数组:

UTF8Encoding utf8 = new UTF8Encoding(); string unicodeString = "Quick brown fox"; byte[] encodedBytes = utf8.GetBytes(unicodeString); 

尝试此function,这应该在开箱即用,您可能需要修复命名约定。

 private string UnicodeToUTF8(string strFrom) { byte[] bytSrc; byte[] bytDestination; string strTo = String.Empty; bytSrc = Encoding.Unicode.GetBytes(strFrom); bytDestination = Encoding.Convert(Encoding.Unicode, Encoding.ASCII, bytSrc); strTo = Encoding.ASCII.GetString(bytDestination); return strTo; } 

尝试这个代码

  string unicodeString = "Quick brown fox"; var bytes = new List(unicodeString); foreach (var c in unicodeString) bytes.Add((byte)c); var retValue = Encoding.UTF8.GetString(bytes.ToArray()); 

这应该是最小的代码:

 byte[] bytes = Encoding.Default.GetBytes(myString); myString = Encoding.UTF8.GetString(bytes);