[英]Poco Logging with std::wstring or wchar_t
是否可以使用Poco Logger記錄std::wstring
?
像這個簡短的例子:
int main(int argc, char** argv)
{
Logger& logger = Logger::get("Testlogger");
std::wstring WStringMessage = L"Message as a WString";
std::string StringMessage = "Message as a String";
//logger.information(WStringMessage); //Did not compile because it only takes a String
logger.information(StringMessage);
system("PAUSE");
return 0;
}
有沒有可能的解決方案,還是我必須將每個std::wstring
轉換為std::string
?
以及其他Poco庫(如XML)中的std::wstring
支持如何?
Poco接口僅是utf-8,因此您必須先將字符串轉換為utf-8,然后再將其發送到記錄器:
std::string msg;
Poco::UnicodeConverter::convert(WStringMessage, msg);
logger.information(msg);
對於XML,請參見此處 ,但是基本上建議相同-使用utf-8。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.