当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Split的用法

ASP.NET
asp.net css注释的影响
ASP.NET与数据库相关技巧
关于HtmlForm控件
三色交替的下拉列表框
精通ASP.NET中弹出窗口技术
ASP.NET Forums与现有系统整合方案示例
ASP.NET操作IIS中的虚拟目录
DataGrid与SQL Server 2000数据绑定
如何让Web应用程序在Client端实现导出报表功能
如何保证web app中的Send Email线程稳定性
关于用ASP.Net识别远程主机服务器种类
ASP.NET中上传下载文件
提高ASP.NET性能的方法
asp.net StreamReader 创建文件
asp.net如何生成图片验证码(简单)
一个.net 压缩位图至JPEG的代码
简单的SQL Server数据库数据读取与数据操作
获取网站的RSS聚合到自己的网页
.Net程序中整站通用的防SQL注入函数
asp.net生成缩略图及给原始图加水印的函数

ASP.NET 中的 Split的用法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 115 ::
收藏到网摘: n/a


这是我用VB.NET做的一个Project内的一部分,在这里我主要介绍一下我在编程中使用Split函数新的认识。以前我在使用VB6.0时,对Split函数,只知道它可以用来拆开字符串。
项目要求提取指定文本文件导入至规定的数据表中,而数据表中部分字段信息就在用户所选择文本文件的文件名称中。文本文件名称如下列示:
MCZ-2004-08-21-灯丝电压-0002-X-2DJ.txt
MCZ-2004-08-21-移频接收电压-0002-A2G-JS.txt
QCZ-2004-08-21-轨道电压-0001-1001DGJ.txt
XSZ-2004-08-21-电码化发送电压-0001-SI2JF(L1).txt
XSZ-2004-09-10-电源电压-0050-(直2)GD8-48V.txt
这些文件名称中包含站名(eg:MCZ)、日期(eg:2004-08-21)、类别(eg:灯丝电压)、设备位置(eg:X-2DJ)
为了得到这些信息,这里就要用到Split函数。在进行处理之前,我们必须使用Path类的GetFileNameWithoutExtension方法,去掉文件名称中扩展名并赋给一个变量FName。即:
FName = Path.GetFileNameWithoutExtension(含有路径的文件名称)

用以下办法来取得字段信息(Zm,Csrq ,Lb,Sbwz都是事先定义好的全局变量 )

'//取得文件名中含有的字段信息Zm,Csrq,Lb,Sbwz 值
Private Sub field_Value(ByVal file_Name As String)
Try
Dim a() As String
a = Split(file_Name, "-", 7)
Zm = a(0)
Csrq = a(1) & "-" & a(2) & "-" & a(3)
Lb = a(4)
Sbwz = a(6)
'a(5)是数字序列,属无用信息

Catch ex As Exception
MsgBox("错误:" & ex.Message)
End Try
End Sub

Split函数--是将获取的字符串分解为子字符串组成的数组。如果分界符设置为空字符串,则在数组的第一个位置返回整个字符串,也就是说它返回的是一个数组。

语法
Split(expression[, delimiter[, count[, compare]]])
Split函数语法有如下几部分:
部分描述
expression 必需的。包含子字符串和分隔符的字符串表达式 。如果expression是一个长度为零的字符串(""),Split则返回一个空数组,即没有元素和数据的数组。
delimiter 可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的 expression字符串。
count 可选的。要返回的子字符串数,–1表示返回所有的子字符串。
compare 可选的。数字值,表示判别子字符串时使用的比较方式。

而且,在VB.NET中String对象还提供了Split方法,传递的参数还可以是分隔符的字符数组,如下中的 New Char() {",", " ", "!"}

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim strNames() As String
Dim strName2 As String = "Hi,I am wuxuetie!"
strNames = strName2.Split(New Char() {",", " ", "!"})
Dim i As Integer
For i = 0 To strNames.Length - 1
TextBox1.Text = ""
Debug.Write(strNames(i) & " ")
Next
End Sub