我有一个包含一些Unicode字符的字符串,如何将其转换为UTF-8编码?
我有一个包含一些Unicode字符的字符串,如何将其转换为UTF-8编码?
这段代码将使用UTF-8编码将您的字符串转换为字节数组:
UTF8Encoding utf8 = new UTF8Encoding();
string unicodeString = "Quick brown fox";
byte[] encodedBytes = utf8.GetBytes(unicodeString);
Encoding.UTF8.GetBytes
而要创建另一个编码器的实例? - Jesse C. Slicer尝试使用此函数,这应该可以立即解决问题。但您可能需要修改命名约定。
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;
}
代码应该尽可能简洁:
byte[] bytes = Encoding.Default.GetBytes(myString);
myString = Encoding.UTF8.GetString(bytes);
string unicodeString = "Quick brown fox";
var bytes = new List<byte>(unicodeString);
foreach (var c in unicodeString)
bytes.Add((byte)c);
var retValue = Encoding.UTF8.GetString(bytes.ToArray());