vb.net临时数据的简单介绍

.NET语言的选择,C#,VB.Net哪个更有前途?Visual Basic.net还是C#
——如何选择.net语言
在.net中vb.net临时数据,如何选择VB或C#?这似乎已经争论了很久 。很多人盲目选择,也产生了许多流言和错误 。本文将从以下方面指导你选择正确的开发语言 。
功能上的考虑
许多人认为C#的功能比VB.net强大,或者C#更加适合.net等 。其实这不是一两句话能比较清楚的 。C#的确有VB无法完成的功能,但VB也有C#无法完成的功能 。总的来说,对于.net开发 , VB和C#没有任何差别 , 都100%兼容于CLS 。下面列出的是他们语言功能上的不同,这些仅仅是语言实现上的问题,不会影响到生成的代码 。打*号的内容与CLS不兼容 。
C#有而VB没有的功能vb.net临时数据:
1、 运算符重载 。*
2、 不安全代码(指针和固定内存区) 。*
3、 无符号整数 。*
4、 移位运算 。
VB有而C#没有的功能
1、 即时编译 。
2、 静态事件绑定 。
3、 条件异常捕获 。
4、 COM兼容类 。*
5、 宽松的类型检查和变量声明 。
6、 Visual Basic Runtime库 。
7、 可选参数、带参数属性、模块等语言特征 。*
8、 动态数组 。*
可见,实际上功能更强大的是VB而不是C# 。不过它们不一样的地方多半是无关紧要的特征 。总体上来说,不应从功能上选择VB或者C#,因为他们没有什么具体的差别 。
性能上的考虑
性能是程序员最关心的问题 。VB和C#都生成一样的IL,因此理论上说不会有性能的差异 。但许多人为什么说C#的性能高于VB.net呢?这是因为VB.net支持即时编译 , 就是一边书写代码一边编译 。这样可立刻发现语法错误,使调试变得更加容易 。但是这样一来VB就需要随时浏览整个代码文件,并把临时数据储存 。这造成VB.net生成的代码中常常具有冗余部分 。但也不能就此下结论说VB比C#慢,当用户选择打开优化并且以Release方式编译工程,就能得到与C#一样简短快速的代码 。
学习上的难度
这部分不仅仅初学者需要考虑 , 那些从现有开发工具转移到.net的开发人员也需要考虑 。首先,VB和C#都是非常简单的,对于初学者来说,VB提供伸缩性更强的空间 , 因此比C#更加易于接受 。但这只是相对而言,C#对于初学者来说也不会有太多的困难 。
对于使用Visual Basic6或其他版本的程序员来说 。VB.net的语法显然要比C#更加接近VB6,网上流传的VB与VB.net差别被过分夸大,使部分程序员退缩 。其实VB.net增加的只是面向对象的思想 , 许多VB程序员不具备完善的面向对象编程开发经验,因此觉得VB.net难以接受 , 这是很容易克服的 。想想看,即使你要使用C#不也得学习面向对象吗?至于有C/C/Java经验的人,C#是小菜一碟 。刚才说过C#和VB实际上都很简单 , 所以不见得VB程序员学习C#就要比C/C程序员来的困难 , 反之亦然,有C/C经验的人也可以果断的选择VB 。
移植现有代码
这一部分是程序员最头疼的部分 。但对语言选择有决定性的意义 。
从VB6移植代码的程序员,最佳选择就是VB.net,因为其他.net语言没有一种是与VB相似的 。而且即使VB6的工程移植到VB.net非常困难,也有一个移植向导可以帮助你完成大部分工作 。如果手工把他移植到C# , 需要白白花费大量的时间 。而且刚开始使用C#的VB程序员通常都会为C#缺少他们熟悉的函数而头疼 。VB.net不会出现这种情况 。
从ASP移植到ASP.net,首选语言仍然是VB.net,因为多数程序员使用的ASP语言是VBScript , 只有VB.net最大程度地接近这种语言 。
C#对于移植代码似乎没有作用,了解C#的人都明白,把现有C/C代码放到C#中运行几乎是100%不能通过的 。所以,如果需要移植C/C代码 , 最好使用Visual C.net 。他做到了最好的新旧结合 。C#仅仅用于编写新的.net应用程序 。
如果需要从Java移植代码,C#可以选择 。同时还有J#及其他一些MS提供的转换工具 。
文档和资源方面的考虑
在MSDN文档中,C#和VB是同等看待的 。所有文档和例子都是有VB和C#两份的 。因此,在寻求资源方面都不用担心 。互联网上的资源,C#要多于VB,特别是国内,有倾向于C#的潮流 。但是ASP.net的资源VB较多 。国内缺乏VB.net资源是影响VB.net推广的重要原因 。但是在国外有很多非常成熟的VB技术,如掌上设备的开发技术 。
代码风格和杂项问题
C#书写的代码比VB平均短小20%,许多人不喜欢VB中过长的关键字 。当然他们可以选择C# 。但在开发环境中,VB的自动完成功能比C#更完善,其实30%的代码都是自动补充的 。因此,实际上VB程序员不会比C#多打多少字 。但VB语言换行比C#麻烦 , 如果需要书写大量繁杂而长的代码,最好选择C# 。VB的代码接近完整的英语,比C#更加易读 。如果是初学者不妨选择VB 。
VB.NET 本地保存数据VB可以用任何格式保存文件数据不仅仅是注册表\XML\INI
甚至于未知vb.net临时数据的格式 。vb.net临时数据我教vb.net临时数据你命令:
open "C:\setup.safe" for output as #1
print #1,"object"
close #1
其中setup.safe就是一个文件,后缀为.safe,当然可以改成.dat包括其vb.net临时数据他任何后缀.
object就是你要写入setup.safe的内容.
vb.net 中怎么没有找到 DataTable 控件?DataTable 不是控件 , 而是一个临时保存数据的虚拟表,当然不会在工具箱里找到它 。
如果是想显示表格,可以用 DataGridView 控件 。
vb.net EXCEL 问题使用了VB.NET开发一个访问excel读取数据并修改的小程序,有一些经验性的东西和大家共享,如果有误还请大家指正 。
大致分为这样几个部分来说明:
1、准备部分:
准备部分我们需要添加excel library的引用到工程中:我使用office2003,它的库文件为 Microsoft excel 11.0 object library 。如果使用excel2000,那么它使用的是Microsoft excel 9.0 object library 。
有需要时,我们添加Imports 命名空间 。
我在这个程序中只是访问了excel的数据,不需要命名空间了哈 。
2、声明一些对象:
这些对象并不是都需要 , 前面三个应该有,后面的 , 你需要什么对象就声明:
Dim excelapp As Excel.Application‘声明一个application对象
Dim excelworkbook As Excel.Workbook ‘声明一个工作簿对象
Dim excelsheet As Excel.Worksheet‘声明一个工作表对象
等等…如:
Dim excelrange As Excel.Range‘声明一个范围对象
3、访问一个excel文件:
excelapp = New Excel.Application
excelworkbook = excelapp.Workbooks.Open(strfile) ‘访问到工作簿:这个strfile 是文件的路径,我从打开文件对话框中得到的 。
excelsheet = excelworkbook.Sheets.Item(1)‘访问到工作表:item使用索引值来得到sheet对象的引用
excelsheet.activate
我们可以得到此文件中的值:
定义一个string变量:
Dim strcellvalue as string
Strcellvalue=https://www.04ip.com/post/excelsheet.cells(1,1).value ‘得到A1单元格的内容 。
修改的时候反过来就可以了:
excelsheet.cells(1,1).value= https://www.04ip.com/post/Strcellvalue
4、善后:
在程序的每一个退出口操作excel对象,保存或者不保存:
Excelworkbook.save
Excelworkbook.close
Excelapp=nothing
5其它:
需要注意~上面的代码需要一些容错机制,比如:
If Not excelworkbook Is Nothing Then 这样的话来达到程序的正确运行
需要判断现在excel又没有打开 。如果有excel进程正在运行 。你的代码很可能会影响到打开的excel,像Excelworkbook.close这样的语句虽然前面已经很好的唯一指定了工作簿,但不能很武断的进行鲁莽的操作,我们需要判断现在excel的运行情况 。
另外,VB.NET 读取Excel 2007的xlsx文件和读取老的.xls文件是一样的,都是用Oledb读取,仅仅连接字符串不同而已 。读取xlsx 用的是Microsoft.Ace.OleDb.12.0;具体操作方法如下:
Public Shared Function GetExcelToDataTableBySheet(ByValFileFullPath As String, ByVal SheetName As String) As DataTable
'string strConn = "Provider=Microsoft.Jet.OleDb.4.0;""data source="FileFullPath";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此连接只能操作Excel2007之前(.xls)文件
Dim strConn As String = ("Provider=Microsoft.Ace.OleDb.12.0;""data source=")FileFullPath";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"
'此连接可以操作.xls与.xlsx文件
Dim conn As New OleDbConnection(strConn)
conn.Open()
Dim ds As New DataSet()
Dim odda As New OleDbDataAdapter(String.Format("SELECT * FROM [{0}]", SheetName), conn)
'("select * from [Sheet1$]", conn);
odda.Fill(ds, SheetName)
conn.Close()
Return ds.Tables(0)
End Function
读取Excel文件时,可能一个文件中会有多个Sheet,因此获取Sheet的名称是非常有用的 。根据Excel物理路径获取Excel文件中所有表名的具体操作方法如下:
Public Shared Function GetExcelSheetNames(ByVal excelFile As String) As [String]()
Dim objConn As OleDbConnection = Nothing
Dim dt As System.Data.DataTable = Nothing
Try
'string strConn = "Provider=Microsoft.Jet.OleDb.4.0;""data source="excelFile";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此连接只能操作Excel2007之前(.xls)文件
Dim strConn As String = ("Provider=Microsoft.Ace.OleDb.12.0;""data source=")excelFile";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"
'此连接可以操作.xls与.xlsx文件
objConn = New OleDbConnection(strConn)
objConn.Open()
dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, Nothing)
If dt Is Nothing Then
Return Nothing
End If
Dim excelSheets As [String]() = New [String](dt.Rows.Count - 1) {}
Dim i As Integer = 0
For Each row As DataRow In dt.Rows
excelSheets(i) = row("TABLE_NAME").ToString()
i= 1
Next
Return excelSheets
Catch
Return Nothing
Finally
If objConn IsNot Nothing Then
objConn.Close()
objConn.Dispose()
End If
If dt IsNot Nothing Then
dt.Dispose()
End If
End Try
End Function
vb.net保存数据都是用SQL语句完成的
写入数据库
strSQL="INTO TABLENAME (OPTION1,OPTIN2)VALUES(VALUE1,VALUE2)";
cmd.Connection = conn;
【vb.net临时数据的简单介绍】cmd.CommandText = strSQL;
cmd.Parameters.Add(paramrs[i]);
try
{
conn.Open();
}
catch(Exception ex)
{
throw ex;
}
finally
{
cmd.Parameters.Clear();
cmd.CommandText = null;
cmd.Dispose();
conn.Close();
}
读取值
strSQL ="SELECT OPTION1,OPTION2 FROM TABLENAME";
cmd.CommandText = strSQL;
cmd.Connection = conn;
DataSet ds = new DataSet();
try
{
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
}
catch (Exception ex)
{
throw ex;
}
finally
{
cmd.Dispose();
conn.Close();
}
TextBox2.text = ds.Tables[0].rows[0][0].value.tostring();
VB.net 和C#.net 各有什么优缺点C#.net优点:
运算符重载 。不安全代码(指针和固定内存区)、 无符号整数、移位运算 。
VB的优点:
即时编译、静态事件绑定、条件异常捕获、COM兼容类、宽松的类型检查和变量声明、Visual Basic Runtime库、可选参数、带参数属性、模块等语言特征、动态数组 。
通过VB.NET开发好的程序绝对没有问题(包括Direct X游戏开发) 。虽然VB.NET的资料少,但是只要C#支持的VB.NET都支持(大体上这样,因为都要经过MSIL中间环节 。除了指针之类的VB.NET不支持C#支持,但是没有多大实际用处) 。
vb.net的资料以英文资料居多(只有英文资料才有看头,中国的没有什么好资料),得看看英文水平过不过关 。还有VB.NET的ide也比C#的IDE好得多,代码看得也舒服 。(C#的大括号{}太烦人) 。
至于VB6对C的帮助 , 只是理解上会容易一些,其它用处不大 。有VB6的基础学VBNET会方便一些 , 但是并不是会VB6就会VB.NET,它们差别也不小 。
扩展资料:
NET、C#和ASP.NET之间的区别 :
1、NET是一个平台 , 一个抽象的平台的概念 。
NET 平台其本身实现的方式其实还是库,抽象层面上来看是一个平台 。
基本可以理解的NET核心就是NETFramwork 。
NETFramework包括两个关键组成元素:
a. CommonLanguageRuntime,公共语言运行时(CLR0)-提供内在管理,代码安全性检测等功能 。
b. NETFrameworkClassLibrary,.NET 框架类库(FLC)-提供大量应用类库,提高开发效率 。
学习NET Framework 是所有.NET开发人员都必须的,否则开发NET程序永远都是停留在‘外功’的招式,NETramework 是NET开发高手的‘内功’修行之一 。
2、C#是一个程序设计语言 , 仅仅是一个语言 。
程序设计语言仅仅是为了方便开发人员和计算机沟通的工具,虽然 C#语法相对 C 和 C 要多一些 , 但是相对来看 C#语法都比较固定,这样使用起来却都很容易 。我认可一位朋友说的,C#的语法更严谨!
这里回过来看看NET和C#的关系,不得不提的是NET程序的执行过程 。
C#符合NETCLR 中的公共语言运行规范 。CLS:commonlanguagespecification,当然所有的NET Language 都是符合这个规范的例如:VB.NET、XAML 和 C/CL等等 。
C#需要符合NETCLS , 是因为NETCLR和JAVA虚拟机类似,有一个中间语言共机器来执行 。所有不同语言的.NET代码在执行前会被编译成同样的中间语言(MSIL),所以所有NET 支持语言都必须符合符合CLS 规范 。
P.S:如果做.NET3.0XAML开发的朋友,可以尝试下ildasm.exe看看XAML的应用程序,会发现原来 XAML其实很简单 。
3、ASP.NET是一个网站开发的技术,仅仅是.NET框架中的一个应用模型 。
用微软公司ASP.NET快速入门中的一句话来解释,ASP.NET是用于生成基于Web的应用程序的内容丰富的编程框架 。
ASP.net 和C#的区别:
编写asp.net通常包括两部分的代码:网页层和后台处理层,网页就是用标记语言来写的,而网页对应的后台处理程序则需要.net语言来完成,目前主要是采用c#和vb.net 。
可以说整个的asp.net网站通过c#或者vb.net来实现 。而c#则是ms .netframework的主要语言,可以用在网站,桌面应用等方面 。可以算是一种比较流行的编程语言 。
关于vb.net临时数据和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读