0
A
回答
0
解決方法之一是簡單地使用std :: wstring而不是std :: string。使用Unicode字符集,你可以使用下面的語法定義一個寬字符串文字:
std::wstring wstr = L"hello world";
不過,如果你想用的std :: string堅持,那麼你需要將字符串轉換爲不同的編碼。這將取決於你的std :: string是如何編碼的。 Windows中的默認編碼是ANSI(但是在讀取文件或從網站下載文本時,最常見的編碼通常是UTF8)。
此答案顯示了一個將std :: string轉換爲Windows上的std :: wstring的函數(使用MultiByteToWideChar
函數)。
https://stackoverflow.com/a/27296/966782
注意,答案使用CP_ACP
作爲輸入的編碼(即ANSI)。如果你的輸入字符串是UTF8,那麼你可以改爲使用CP_UTF8
。
一旦你有一個std :: wstring的,你應該能夠很容易地檢索SQLWCHAR *使用:
std::wstring::c_str()
+0
'L'需要一個字符串後,但在我的CAS我試圖轉換一個變量。 – ABCmo
相關問題
- 1. 將std :: wstring轉換爲SQLWCHAR *
- 2. 從std :: string轉換爲NSString
- 3. 如何將System :: String ^轉換爲std :: string?
- 4. 將std :: __ cxx11 :: string轉換爲std :: string
- 5. 如何將std :: string指針轉換爲std :: string
- 6. 如何將unicode QString轉換爲std :: string?
- 7. 如何轉換爲std :: string到in_port_t
- 8. 如何將char []轉換爲std :: string
- 9. 如何將wchar_t *轉換爲std :: string? ?
- 10. 如何將std :: string轉換爲LPCSTR?
- 11. 如何將Glib :: ustring轉換爲std :: string?
- 12. 錯誤C2440:'=':無法從'std :: string []'轉換爲'std :: string']'
- 13. 錯誤C2664從常量的std :: string轉換爲的std :: string&
- 14. 無法將參數2從'std :: string *'轉換爲'std :: string'
- 15. 將NSString轉換爲std :: string
- 16. 將std :: string轉換爲QString
- 17. 將std :: string轉換爲QwtText
- 18. 將uint64_t轉換爲std :: string
- 19. 將void *轉換爲std :: string
- 20. 將std :: string轉換爲char
- 21. 將std :: string轉換爲basic_ostream?
- 22. 從的std :: string轉換爲UINT8
- 23. 從的std :: string轉換爲char * C++中
- 24. C++'==':沒有從'int'轉換爲'std :: string'
- 25. 從std :: string轉換爲字符串^
- 26. 無法從'std :: string'轉換爲'LPSTR'
- 27. C++/CX:將std :: string轉換爲Platform :: String^
- 28. 將std :: ostream轉換爲std :: string
- 29. 轉換xchar * std :: string
- 30. 如何在C++中將std :: string轉換爲CV :: String?
請參閱下面的帖子:[發佈] [1] [1 ]:http://stackoverflow.com/questions/11275225/converting-stdwstring-to-sqlwchar –
@ user3037661,這就是'std :: wstring' – ABCmo
拍好抓,不要緊,然後 –