簡體   English   中英

使用std :: wstring或wchar_t進行Poco日志記錄

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM