[英]Printing libcurl response in Windows command prompt
我試圖打印出我從卷曲查詢(UTF-8字符集)中得到的答案,執行查詢后,我用以下代碼制作了一個字符串:
size_t writeToString(char* ptr, size_t size, size_t nmemb, std::string* stringPtr) {
stringPtr->append(ptr, nmemb*size);
return size*nmemb;
}
當執行cout
字符串的,中的Unicode字符顯示為他們的代碼(例如,\\ u0434)。 我嘗試將命令提示符的代碼頁更改為65001。是否可以在Windows命令提示符下打印UTF-8 curl響應?
您是否嘗試過在cout之前將其存儲在std :: wstring (而不是std :: string)中?
這個問題可能會有所幫助: UTF8與STL中的寬字符轉換
嘗試調用SetConsoleOutputCP(65001)
,然后使用WriteConsole()
或WriteConsoleOutput()
代替std::cout
。
否則,在使用std::cout
之前,將UTF-8數據解碼為UTF-16,然后將其轉換為Ansi。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.