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

ASP.NET
blog程序新版本V2.0 Beta完成,提供V1.0全部源码下载
“/”应用程序中的服务器错误
asp.net(c#)复数类(复数加减乘除四则运算)
asp.net(c#)不可访问,因为它受保护级别限制
asp.net(c#) 水仙花数
ASP.NET实现用图片进度条显示投票结果
asp.net(c#) MS AJAX的安装
asp.net(c#)有关 Session 操作的几个误区
ASP.net基础知识之常见错误分析
[.net] 操纵自如-页面内的配合与通信
c# static的全部用法收集整理
使CheckBoxList的Attributes属性生效(修改微软的一个bug)
在ASP.NET中使用Session常见问题集锦
[原创]完美解决Could not load file or assembly ''AjaxPro.2'' or one of its dependencies. 拒绝访问。
在Apache环境下成功的运行ASP.NET的注意事项
ClickOnce DIY全自动更新下载升级的自我实现
asp.net jscript 一句话木马
在ASP.Net中实现flv视频转换的代码
将DataTable中的一行复制到另一个DataTable的方法
在DataTable中执行Select("条件")后,返回DataTable的方法

ASP.NET 中的 Split的用法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 194 ::
收藏到网摘: 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