NET與vbUnicode UTF32Encoding/UTF32Decoding是否等同?NET中VB6的vbUnicode的等價性?
回答
vbUnicode只是一個常量。這本身毫無意義。向我們展示一些代碼。你想做什麼?
你是否像這樣將一個ANSI字符串轉換爲UTF32與StrConv?
newString = StrConv(ansiString, vbUnicode)
一個VB.Net等同可能是因爲Encoding.Default.GetString是Encoding.Default爲ANSI編碼
newString = Text.Encoding.Default.GetString(ansiStringAsByteArray)
但它可能取決於你的代碼來獲得ANSI字符串
不知道你在找什麼,但Encoding
類,特別是Encoding.UTF32Encoding
可能是你所需要的。
沒有看到代碼,這都是猜測,但它更可能是OP需要['Encoding.Default '](http://msdn.microsoft.com/en-us/library/system.text.encoding.default.aspx)。在VB6中'vbUnicode'的常見用法是將Windows「ANSI」字符串轉換爲UTF-16,以將它們存儲在VB6本地字符串(應該是UTF-16)中。看到我的答案。在VB6中,不太可能將UTF-32與'vbUnicode'結合使用。 – MarkJ
Encoding.Default
從@ MarkJ的答案適合我,但我有點緊張,因爲它的默認取決於你的語言環境。找到KB 311338,它顯示瞭如何明確指定字符集,並建議1252西歐字符。因此,將馬克的例子,即變爲:
在我的英語中美系統,給出了相同的結果爲Encoding.Default
,但指定1252理論上應該給予同樣的結果,無論語言環境。
更新2016年1月18日
看到下面@ MarkJ的評論後,我做了一些更多的研究和發現,VB6 StrConv事實上確實使用默認的語言環境,除非你指定一個。 (你只能指定一個LocaleID,例如1033代表美國英文,而不是ANSI代碼頁,例如1252代表西歐)。因此,Encoding.Default
與沒有LocaleID的StrConv
更接近。 GetEncoding(1252)
增加了Mark的VB6示例中沒有的特性。
所有的真實情況,我只會注意到VB6的轉換將根據您的語言環境而有所不同,所以如果您正在尋找與VB6行爲完全相同的行爲 - 也就是說,如果您的用戶在不同的語言環境中運行您的程序 - 「Encoding.Default」是最佳選擇。在其他情況下,您可能需要指定區域設置。 – MarkJ
謝謝@MarkJ。答案已更新。 –
- 1. VB6中的VLookup的等價
- 2. VB6中的ChrToOemA的.NET等價物是什麼?
- 3. Java/Android中.NET XMLSerializer的等價性?
- 4. C#中VB6的ObjPtr的等價(功能)?
- 5. 在VB.Net中VB6的vbNull等價物?
- 6. 等價於.NET中的System.currentTimeMillis()?
- 7. 在c#中VB6 App.Path的等價性是什麼?
- 8. .NET等價的SQL Server STDistance
- 9. Javascript等價於.NET的DateTime.Parse
- 10. PHP等價的.NET代碼
- 11. .NET等價的JavaScript Array.join()
- 12. java等價的.net FileStream
- 13. delphi中的TOleServer ...等價的.NET類?
- 14. .NET中的java.net.URLConnection的等價物
- 15. .NET Core 2.0中的PropertyInfo.IsPublic的等價物
- 16. Python的等價性?
- 17. jconsole等價於.Net?
- 18. JVMTI等價於.NET
- 19. JMS等價於.Net
- 20. .NET等價於java.awt.color.ColorSpace
- 21. .Net,asp Global.asa等價
- 22. .NET Socket中的DataWriter.WriteUInt32等價物?
- 23. 等價於Java中的CryptoStream .NET?
- 24. 等價於Java的「在.net中查找()」?
- 25. 在protobuf-net中,[ProtoContract(ImplicitFields = ImplicitFields.AllFields)]的代碼等價性是什麼?
- 26. 將vb6 StrConv(字符串,vbunicode)轉換爲c#
- 27. VB.NET中的VB6 PaintPicture()方法的等價值?
- 28. VB6中的VB6 .NET互操作問題
- 29. VB6 .NET Interop - 性能問題
- 30. GridView的asp:HiddenField的等價性
很難知道是否有等價物,因爲您沒有向我們展示如何在VB6中使用它的代碼示例。 –
http://msdn.microsoft.com/en-us/library/d3sz0f8a%28v=vs.71%29.aspx –