C# 如何转换vb6';vbFromUnicode';用C串#

C# 如何转换vb6';vbFromUnicode';用C串#,c#,.net,vb6,C#,.net,Vb6,我在VB6中获得了as代码,需要在C#中进行转换。我用谷歌搜索了一下,但没有得到任何具体的答案 VB代码: Dim strTemp = StrConv(strTemp , vbFromUnicode) 我试着在c#中这样做: 我认为这是不对的 有什么建议吗?以上vb6代码在c#中的正确解释是什么?这是系统默认代码页上Unicode字符串到Ansi字符串的转换 StrConv(strTemp , vbFromUnicode) 在C#中,您需要根据当前区域性找到默认代码页 int codepag

我在VB6中获得了as代码,需要在C#中进行转换。我用谷歌搜索了一下,但没有得到任何具体的答案

VB代码:

Dim strTemp = StrConv(strTemp , vbFromUnicode)
我试着在c#中这样做:

我认为这是不对的


有什么建议吗?以上vb6代码在c#中的正确解释是什么?

这是系统默认代码页上Unicode字符串到Ansi字符串的转换

StrConv(strTemp , vbFromUnicode)
在C#中,您需要根据当前区域性找到默认代码页

int codepage = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage;
byte[] convertedBytes = Encoding.GetEncoding(codepage).GetBytes(unicodeString);
string convertedAsciiString = System.Text.Encoding.ASCII.GetString(convertedBytes);

你认为这不对吗?它有效吗?没有给出预期的结果,对我来说也不太正确…预期的结果是什么,实际的结果是什么?还有,什么是
vbFromUnicode
?我们知道这不是VB6代码,因为它不是“动态”(脚本)像VB.Net和C#这样的语言,因此
Dim
语句不支持内联赋值。
int codepage = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage;
byte[] convertedBytes = Encoding.GetEncoding(codepage).GetBytes(unicodeString);
string convertedAsciiString = System.Text.Encoding.ASCII.GetString(convertedBytes);