Visual Basic .NET/Visual Basic 6 到 .NET 函数等效
外观
这里提供的信息旨在帮助正在从 Visual Basic 6 转向 Visual Basic .NET 的开发者,并希望了解如何在不使用 Microsoft.VisualBasic 命名空间(包含所有遗留 Visual Basic 6 函数)的情况下完成任务。
不要误解;通过使用 Microsoft.VisualBasic 命名空间中的函数,你并没有使用“旧代码”,因为所有这些函数都映射到 .NET Framework 中的新的等效函数。避免使用这些函数的主要好处是,你可以熟悉 .NET Framework 中包含的命名空间。
如果你想删除 Microsoft.VisualBasic 命名空间,你可以做以下两件事之一
- 在每次开始新项目时手动删除导入。
- 创建一个不包含 Microsoft.VisualBasic 命名空间的项目模板。
要创建模板,请查看以下链接
- 这里列出的一些函数可能不是完全等效的,但它们是可用的最接近的函数。
- 鼓励你使用对象浏览器 (F2) 自己探索 .NET 命名空间。
- 点击任何 .NET 等效函数以访问 Microsoft Developer Network,并了解更多关于该函数的信息。
Visual Basic 6 | .NET 等效 |
---|---|
App.Path | Application.StartupPath |
CallByName | Type Object.InvokeMember |
Circle | Graphics Object.DrawEllipse |
Collection | Collections.Hashtable, Collections.Dictionary |
Command | Environment.GetCommandLineArgs |
DoEvents | Application.DoEvents |
Environ | Environment.GetEnvironmentVariable |
Err | 已弃用 - 使用 Exception 对象和 Try ... Catch ... End Try 语句 |
Error | Exception Object.Message |
GetSetting | 已弃用 - 查看 Configuration.ConfigurationSettings |
IIf | 已弃用 |
InputBox | 已弃用 - 自行制作表单 |
Len | Runtime.InteropServices.Marshal.SizeOf |
MsgBox | MessageBox.Show |
RGB | Color Object.FromArgb |
SavePicture | Image Object.Save |
SaveSetting | 已弃用 - 查看 Configuration.ConfigurationSettings |
SendKeys | SendKeys.Send |
Shell | Process.Start |
Switch | 已弃用 |
TypeName | Any Object.GetType.ToString |
Unload | 已弃用 |
VarType | Any Object.GetType |
Visual Basic 6 | .NET 等效 |
---|---|
Asc | Convert.ToInt32(Char) |
Chr | Convert.ToChar |
Format | Any Object.ToString(Format String) |
FormatCurrency | Any Numeric Object.ToString("c") |
FormatDateTime | Date Object.ToString(Format String), Date Object.ToLongDateString |
FormatNumber | Any Numeric Object.ToString(Format String) |
FormatPercent | Any Numeric Object.ToString("p") |
Hex | Integer Object.ToString("x"), Convert.ToString(Integer, 16) |
InStr | String Object.IndexOf |
InStrRev | String Object.LastIndexOf |
Join | String.Join |
LCase | String Object.ToLower |
Left | String Object.Substring |
Len | String Object.Length |
LTrim | String Object.TrimStart |
Mid | String Object.Substring |
Oct | Convert.ToString(Integer, 8) |
Replace | String Object.Replace |
Right | String Object.Substring |
RTrim | String Object.TrimEnd |
Space | String Object.PadLeft, String Object.PadRight |
Split | String Object.Split |
String | String Object = New String(Char, Count) |
StrReverse | Dim c() As Char = Array.Reverse(String Object.ToCharArray) |
Trim | String Object.Trim |
UCase | String Object.ToUpper |
Visual Basic 6 | .NET 等效 |
---|---|
ChDir | IO.Directory.SetCurrentDirectory |
CurDir | IO.Directory.GetCurrentDirectory |
Dir | IO.Directory.GetFiles, IO.Directory.GetDirectories, IO.Directory.Exists, IO.File.Exists |
EOF | IO.StreamReader.Peek = -1 |
FileAttr | 已弃用 - 使用 StreamReader 或 StreamWriter |
FileCopy | IO.File.Copy |
FileDateTime | IO.File.GetLastAccessTime, IO.File.GetCreationTime |
FileLen | IO.FileStream Object.Length |
GetAttr | IO.File.GetAttributes |
Loc | IO.Stream Object.Position |
LOF | IO.Stream Object.Length |
MkDir | IO.Directory.CreateDirectory |
RmDir | IO.Directory.Delete |
SetAttr | IO.File.SetAttributes |
Visual Basic 6 | .NET 等效 |
---|---|
Filter | Array.BinarySearch |
UBound | Any Type of Array.GetUpperBound(0) |
Visual Basic 6 | .NET 等效 |
---|---|
DateAdd | Date Object.Add |
DateDiff | Date Object.Subtract |
Now | DateTime.Now |
Visual Basic 6 | .NET 等效 |
---|---|
Abs | Math.Abs |
Atn | Math.Atan |
Cos | Math.Cos |
Exp | Math.Exp |
Fix | Math.Truncate, Math.Floor (对于负数), Math.Ceiling (对于正数) |
Int | Math.Floor |
Log | Math.Log |
Randomize | 已弃用 - Random 对象在声明时会自动随机化 |
Rnd | System.Random Object.Next |
Round | Math.Round |
Sgn | Math.Sign |
Sin | Math.Sin |
Sqr | Math.Sqrt |
Tan | Math.Tan |