vb.net 中如何实现Vb6中的 format(str, "@@-@@-@@")
以下是各种效果返回值
1. str= “123” format(str, "@@-@@-@@") 返回 “ - 1-23”
2. str= “123abc” format(str, "@@-@@-@@") 返回 “12-3a-bc”
3. str= “123abc456” f ormat(str, "@@-@@-@@") 返回 “12-3a-bc456”
vb.net 中有何方法可以实现vb6中的 format(str, "@@-@@-@@")
求大神们解答
------解决思路----------------------
Imports Microsoft.VisualBasic.Compatibility.VB6
Module Module1
Sub Main()
Console.WriteLine(Support.Format("123", "@@-@@-@@"))
Console.WriteLine(Support.Format("123abc", "@@-@@-@@"))
Console.WriteLine(Support.Format("123abc456", "@@-@@-@@"))
Console.ReadLine()
End Sub
End Module
- 1-23
12-3a-bc
12-3a-bc456
------解决思路----------------------
警告是 .Net 版本的原因。
先前的 VS.Net 考虑从 VB6 升级,所以支持用 Compatibility.VB6。
后来的版本虽然还支持,但是不建议用了,所以出警告。
要么降版本、要么忽略、要么不用。
------解决思路----------------------
你用 .Net Reflector 反编译 Microsoft.VisualBasic.Compatibility.dll,把 Support.Format() 以及相关的代码复制过来不就可以了。
------解决思路----------------------
Dim ddd As String
ddd = "123"
Dim fff As String
If Len(ddd) < 6 Then
fff = Space(6 - Len(ddd)) & ddd
Else
fff = ddd
End If
MsgBox(fff.Substring(0, 2) & "-" & fff.Substring(2, 2) & "-" & fff.Substring(4))