繁体   English   中英

如何在Visual C ++中使用UTF8Encoding

[英]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);
    }

这个网站上,我找到了UTF8Encoding的c ++代码,我从中创建了这段代码

    void StrToByteArray(string unicodeString)
    {
        UTF8Encoding^ utf8 = gcnew UTF8Encoding;
        array<Byte>^encodedBytes = utf8->GetBytes( unicodeString );
    }

但这给了我以下错误

错误2错误C2664:'cli :: array ^ System :: Text :: Encoding :: GetBytes(cli :: array ^)':无法将参数1从'std :: string'转换为'cli :: array

为什么它会在与文档相同的情况下执行此操作? (除了我使用普通字符串,但使用顶级字符串^给我一个错误。)

我不确定它是否相关但我的代码是管理的。

注意:在我开始工作之前,我还没有担心返回任何数据。

string是C ++中与C#中不同的数据类型。 请尝试使用System::String^

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM