任何人都可以幫助我將數據從unicode(16位)轉換爲7位ascii在C++中?unicode(16位)數據轉換爲7位ascii
回答
您可以將unicode字符0..127映射到ASCII集。對於其他字符,沒有7位ASCII等效。你想用這些做什麼?
C++語言本身沒有處理這種轉換的東西。您必須改用RTL/API函數。例如,如果您的應用程序在Windows平臺上運行,則它可以使用Win32 API WideCharToMultiByte()函數。如果你想要更便攜的東西,看看GNU的iconv庫。
或者,您可以簡單地手動執行轉換。 Unicode UTF-16非常容易通過手工解碼,並且從那裏值0-127是ASCII值。
Thanx很多4回答 – dweep 2009-11-13 08:41:25
由於目標是ASCII,你不需要麻煩轉換UTF16,只需拖放所有字符127. – 2012-06-16 09:44:19
想要將雙字節的Unicode字符轉換爲utf7,這會爲您提供可以用ascii字符集表示的字符(並避免由不能處理最高位集的字符的古董系統所造成的亂碼)。請注意,這會將多字節字符拆分爲幾個字符(如果以ascii讀取)。
示例代碼可以在ibiblio.org(來自快速谷歌搜索)中找到。未知許可證。
使用UTF-8而不是UTF-7。所有ASCII字符都以UTF-8格式表示,並且每個字符不使用多個字節。對於UTF-7也不能這麼說,因爲一些ASCII字符是保留的並且需要編碼。另外,UTF-7比UTF-8更復雜,因爲它爲需要編碼的任何字符合並了UTF-16和Base64的修改版本。 UTF-8不做任何這樣的事情。 – 2009-11-13 08:57:10
是的,utf-8是首選,但原始問題意味着他想要可以用7位表示的字符。 – sisve 2009-11-13 17:02:15
這正是UTF-8爲ASCII字符所做的。 – 2012-06-16 17:31:07
- 1. OMRON將16位數字轉換爲ASCII
- 2. 8位到16位轉換
- 3. 將24位bmp轉換爲16位?
- 4. 16位圖像轉換爲32位
- 5. 將16位轉換爲32位浮點
- 6. DICOM將16位轉換爲8位
- 7. Python將32位轉換爲16位tiff
- 8. 需要將16位數據轉換爲8位
- 9. android將位圖轉換爲ascii位圖
- 10. 將16位整數轉換爲0..100
- 11. PHP unicode的16位
- 12. 將字符轉換爲16位的unicode編碼
- 13. 將unicode轉換爲ascii
- 14. 將unicode URL轉換爲ASCII
- 15. 從unicode轉換爲ascii python
- 16. 將16位整數轉換爲8位整數?
- 17. 將字母不是7位ASCII轉換爲ASCII(如將n轉換爲n並將其轉換爲±)
- 18. 轉換8 16位SSE寄存器8位數據
- 19. C# - 轉換8位或16位灰度原始像素數據
- 20. 如何在C#中將16位'short'轉換爲32位整數?
- 21. 將32位實數轉換爲2x 16位字節
- 22. 轉換一個32位的數字爲16位,
- 23. 8位至16位ALU轉換
- 24. 轉換16位PCM到8位
- 25. 轉換波24位到16位
- 26. 如何將24位圖像轉換爲16位rgb565位圖?
- 27. 將12位int轉換爲16位或32位
- 28. 將css顏色轉換爲16位rgb
- 29. 剝離hexdump的高位 - 將高位ascii轉換爲低位
- 30. 將Ascii字符串轉換爲位流
你是否需要像映射ñ(U + 00F1)到「普通」n的花式東西? – MSalters 2009-11-13 09:19:38
它應該如何映射?用ASCII表示的unicode字符應該做什麼? – jalf 2009-11-13 13:07:02