我正在尝试逐步学习Visual Basic .NET,但现在我使用String.Format()方法遇到了自定义数字格式字符串的问题。
我有一个像这样的整数变量
Dim x As Integer = 123456
我希望使用String.Format()方法将其格式化为1,234.56。 我认为以下是正确的格式,但它不起作用:
String.Format("#,###.##", x)
获取我需要的结果的正确格式字符串是什么?。
答案 0 :(得分:0)
作为Plutonix所说的替代方案,您可以使用一个简单的函数来实现:
Public Function FormatInt(format As String, arg As Integer) As String
Dim ArgString As String = arg.ToString
Dim Result As String = ""
Dim FormatIndex As Integer = 0
For i As Integer = 0 To format.Length - 1
If format.Substring(i, 1) = "#" Then
Result = Result + ArgString.Substring(FormatIndex, 1)
FormatIndex = FormatIndex + 1
Else
Result = Result + format.Substring(i, 1)
End If
Next
Return Result
End Function
这可能不是最佳解决方案,但使用起来非常简单:
Dim x As Integer = 123456
FormatInt("#,##.##",x)
反过来让它反过来(反转它)你可以反转这个过程。它不像String.Format()方法那样工作,但我相信它符合您的需求
答案 1 :(得分:0)
x.tostring("n2")
在上面的示例中,它会将结果显示为123,456.00。
不是你可以使用N或N0到你想要的任何数字,如N2,N3,....