等价于函数 String$() VB.Net?
Equivalent of function String$() VB.Net?
我正在将应用程序从 VB6 迁移到 VB.Net,它使用 String$() 函数。
我的问题是:下面代码中VB6 String$()的"equivalent"是哪个?
Dim Symbol As String=""
Dim iRet As Long
iRet = GetLocaleInfo(LCID, LOCALE_SCURRENCY, lpLCDataVar, 0)
Symbol = String$(iRet, 0)
注意String$()
是returns指定长度的重复字符串的函数:
Syntax:
String$(number, character)
number
Length of the returned string.
character
Required. Character
code specifying the character or string expression whose first
character is used to build the return string.
如果我要删除 $
,它会给我错误提示 "String" 是一个 Class 并且不能用作表达式 。
该代码似乎正在获取一种文化的货币符号(和小数点分隔符)。最好用.NET方法来写,而不是在.NET中使用VB6的半途而废
例如,
Imports System.Globalization
Module Module1
Sub Main()
Dim lcid = 2057
Dim ci As New CultureInfo(lcid)
Console.WriteLine(ci.EnglishName)
Console.WriteLine(ci.NumberFormat.CurrencySymbol)
Console.WriteLine(ci.NumberFormat.NumberDecimalSeparator)
Console.ReadLine()
End Sub
End Module
产出
English (United Kingdom)
£
.
CultureInfo Class 的文档中有更多信息。
String$(在较旧的 BASIC 中)等价于 StrDup(VB.NET)。
所以,在你的情况下:
Symbol = StrDup(iRet, Chr(0))
This String
constructor 是创建包含特定字符的特定数量的 String
的正确方法,例如
Dim c = "0"c
Dim count = 10
Dim str As New String(c, count)
我正在将应用程序从 VB6 迁移到 VB.Net,它使用 String$() 函数。
我的问题是:下面代码中VB6 String$()的"equivalent"是哪个?
Dim Symbol As String=""
Dim iRet As Long
iRet = GetLocaleInfo(LCID, LOCALE_SCURRENCY, lpLCDataVar, 0)
Symbol = String$(iRet, 0)
注意String$()
是returns指定长度的重复字符串的函数:
Syntax:
String$(number, character)
number
Length of the returned string.
character
Required. Character code specifying the character or string expression whose first character is used to build the return string.
如果我要删除 $
,它会给我错误提示 "String" 是一个 Class 并且不能用作表达式 。
该代码似乎正在获取一种文化的货币符号(和小数点分隔符)。最好用.NET方法来写,而不是在.NET中使用VB6的半途而废
例如,
Imports System.Globalization
Module Module1
Sub Main()
Dim lcid = 2057
Dim ci As New CultureInfo(lcid)
Console.WriteLine(ci.EnglishName)
Console.WriteLine(ci.NumberFormat.CurrencySymbol)
Console.WriteLine(ci.NumberFormat.NumberDecimalSeparator)
Console.ReadLine()
End Sub
End Module
产出
English (United Kingdom)
£
.
CultureInfo Class 的文档中有更多信息。
String$(在较旧的 BASIC 中)等价于 StrDup(VB.NET)。
所以,在你的情况下:
Symbol = StrDup(iRet, Chr(0))
This String
constructor 是创建包含特定字符的特定数量的 String
的正确方法,例如
Dim c = "0"c
Dim count = 10
Dim str As New String(c, count)