如何在可视C++中使用 UTF8 编码
How to use UTF8Encoding in Visual C++
我需要将下面的 c# 代码更改为 c++ 代码。
public static byte[] StrToByteArray(string str)
{
System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
return encoding.GetBytes(str);
}
在这个网站上,我找到了 UTF8 编码的 C++ 代码,我从中创建此代码
void StrToByteArray(string unicodeString)
{
UTF8Encoding^ utf8 = gcnew UTF8Encoding;
array<Byte>^encodedBytes = utf8->GetBytes( unicodeString );
}
但这给了我以下错误
错误2 错误 C2664: 'cli::数组 ^System::Text::Encoding::GetBytes(cli::array ^)' :无法将参数 1 从 "std::string" 到 'cli::array
为什么它会在与文档相同的情况下执行此操作?(除了我使用的是普通字符串,但使用顶级字符串^会给我一个错误。
我不确定它是否相关,但我的代码是托管的。
注意:在我开始工作之前,我试图不担心返回任何数据。
string
在C++中与在 C# 中是不同的数据类型。请尝试改用System::String^
。
相关文章:
- C++和带有国家符号的文件路径(也许用 UTF8 编码)
- MSVC UTF8字符串编码使用了不正确的代码点
- 使用C++将越南语字符从ISO88591、UTF8、UTF16BE、UTF16LE和UTF16编码为十六进制,反之亦然
- 有没有办法将 vector<unsigned char> 插入 postgresql 表中,具有 bytea 属性,没有 UTF8 编码错误?
- 使用具有 UTF8 编码的源文件将 UTF8 符号打印到 Windows 控制台
- 比较UTF8编码的字符
- 处理UTF8编码的char*数组
- 如何将文本从CP437编码转换为UTF8编码
- 将utf8编码的字符串转换为本地8位编码的字符串,并将无法确定的字符替换为空白
- Rapidjson根本不编码utf8序列
- 从 Mac OS Roman 到 UTF8 的编码
- UTF8 文本编码 - Windows Phone 8.1 C++
- 如何在C++中将文件编码格式设置为UTF8
- 如何轻松检测字符串中的 utf8 编码
- 初始化 utf8 编码字符串 c++11
- 编码.Utf8将逗号转换为c#中的一些特殊字符
- utf8编码算法与utf16算法
- C++字符串编码UTF8 /Unicode
- 在 c++ Windows 中打开 utf8 编码的文件名
- 如何在可视C++中使用 UTF8 编码