我在 C++ Builder 中创建了一些 C++ 类。我现在在 VCL 表单应用程序中使用这些。我有一个加载文本文件并将字符串作为参数的函数。
我正在使用 openDialog 控件浏览到文件然后将其打开。
我的问题是:openFialog 的 .filename 属性是 UnicodeString 的形式,我的函数需要一个 std::string。如何将 unicode 字符串转换为 std::string?
这是我的代码:
OpenDialog1->Execute();
calCalendar.loadAppointmentsFromFile(OpenDialog1->FileName.t_str());
这是函数定义:
void loadAppointmentsFromFile(const std::string& stringFilename);
我收到以下错误:
[BCC32 错误] Assessment2.cpp(39):E2342 参数“stringFilename”中的类型不匹配(需要“const std::string &”,得到“wchar_t *”)
我可以帮忙解决这个问题吗?