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

ASP.NET
Asp.net利用JQuery弹出层加载数据代码
asp.net dataview做无限极分类的又一用法
asp.net ckeditor编辑器的使用方法
告别ADO.NET实现应用系统无缝切换的烦恼(总结篇)
asp.net 实现动态显示当前时间(不用javascript不考虑开销)
.net动态显示当前时间(客户端javascript)
asp.net 结合YUI 3.0小示例
asp.net 取消缓存相关问题说明
asp.net 计划任务管理程序实现,多线程任务加载
ASP.NET 跨页面传值方法
asp.net中url地址传送中文参数时的两种解决方案
Asp.net 菜单控件简洁版
asp.net jQuery Ajax用户登录功能的实现
asp.net SharpZipLib的压缩与解压问题
asp.net url重写后页面回传问题
asp.net与Discuz!NT整合集成实例教程
Discuz!NT 3与asp.net 整合的实例教程
测试控制台使用方法
.net 动态标题实现方法
asp.net *.ashx类型的文件使用说明

ASP.NET 中的 Split的用法


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