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

ASP.NET
URTracker 2.11版 license验证原理剖析
使用DataReader还是DataSet?
XCodeFactory 强化静态检查!
[DNN模块开发]如何写模块数据库安装脚本
C#中数据库操作
.NET和SQL Server中“空值”辨析
用 .NET 实现插件机制
如何用MAPI和CDONTS来发邮件
VB6 中使用错误处理对于速度的影响
基于XMPP的JABBERD功能特性分析
我在使用C#中Treeview与解析XML遇到的问题
使aspx页面能接受HTML,asp的页面传送的文件
顺序求出c(n,r)的排列组合
asp.net生成静态页
根据数据库生成xml二法
Render方法生成静态页
用ASP.Net获取客户端网卡的MAC
缓存类的实现(C#)
r.a.d.controls Q2 2005中TreeView 控件遮挡问题
为按钮添加 确认 对话框

ASP.NET 中的 Split的用法


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