如何将字符串转换为UTF8

本文关键字:UTF8 转换 字符串 | 更新日期: 2023-09-27 18:19:12

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

如何将字符串转换为UTF8

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

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

尝试这个函数,这应该修复它的开箱即用。不过,您可能需要修改命名约定。

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());