| 网站首页 | VB.Net实例分析 | .Net技术文摘 | 下载中心 | VB.Net书籍笔记 | .Net源码 | VBS脚本与组件调用 | Windows2008技术文摘 | 给我们留言 | 
最新公告:

  没有公告

您现在的位置: 乐博网 >> VB.Net实例分析 >> 磁盘文件编程 >> 实例分析正文
最新推荐 更多内容
多重格式文本数据库的操作实例
多重格式文本数据库的操作实例
作者:Ilu    来源:乐博网整理     更新时间:2009-11-29

循环读取文本数据库中所有字段的实例

通过本文,可以了解到如何在多重格式文本数据库根据不同分割符读取所有字段,并且定义不同格式之各栏的宽度与分隔字符

分类:VB.Net

乐博网lob.cn提示:调试环境为 vs2005 +  windows2003 / windows2008 / xp / vista + .NET Framework 2.0

代码如下:

' 导入命名空间。
Imports System.IO
Imports Microsoft.VisualBasic.FileIO
Public Class LOB
    Private Sub LOB_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        txtResult.Text = File.ReadAllText("乐博网\多重格式文本数据库.txt")

        DataGridView1.ColumnHeadersVisible = True
        ' 设定栏标题样式。
        Dim columnHeaderStyle As New DataGridViewCellStyle()

        columnHeaderStyle.BackColor = Color.Beige
        columnHeaderStyle.Font = New Font("Verdana", 9, FontStyle.Bold)
        DataGridView1.ColumnHeadersDefaultCellStyle = columnHeaderStyle

        ' 设定 DataGridView 控件的字段数目。
        DataGridView1.ColumnCount = 3

        ' 设定各栏的标题名称。
        DataGridView1.Columns(0).Name = "乐博网会员编号"
        DataGridView1.Columns(1).Name = "乐博网会员名称"
        DataGridView1.Columns(2).Name = "乐博网会员备注"

        DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells

        DataGridView2.ColumnHeadersVisible = True
        DataGridView2.ColumnHeadersDefaultCellStyle = columnHeaderStyle

        ' 设定 DataGridView 控件的字段数目。
        DataGridView2.ColumnCount = 4

        ' 设定各栏的标题名称。 '更多.net源码和教程,来自[乐博网 www.lob.cn]
        DataGridView2.Columns(0).Name = "乐博网会员上传软件编号"
        DataGridView2.Columns(1).Name = "乐博网会员上传软件名称"
        DataGridView2.Columns(2).Name = "乐博网会员上传软件大小"
        DataGridView2.Columns(3).Name = "乐博网会员上传软件介绍"

        DataGridView2.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells

        DataGridView3.ColumnHeadersVisible = True
        DataGridView3.ColumnHeadersDefaultCellStyle = columnHeaderStyle

        ' 设定 DataGridView 控件的字段数目。
        DataGridView3.ColumnCount = 3

        ' 设定各栏的标题名称。
        DataGridView3.Columns(0).Name = "乐博网文章编号"
        DataGridView3.Columns(1).Name = "乐博网文章标题"
        DataGridView3.Columns(2).Name = "乐博网文章作者"

        DataGridView3.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
    End Sub
    Private Sub btnParseTextFiles_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnParseTextFiles.Click
        Using myReader As New TextFieldParser("乐博网\多重格式文本数据库.txt")
            ' 定义三种格式之各栏的宽度与分隔字符。
            Dim FirstFormat As Integer() = {5, 10, -1}
            Dim SecondFormat As Integer() = {6, 10, 17, -1}
            Dim ThirdFormat As String() = {","}

            Me.DataGridView1.Rows.Clear()
            Me.DataGridView2.Rows.Clear()
            Me.DataGridView3.Rows.Clear()

            Dim CurrentRow As String()
            While Not myReader.EndOfData
                Try
                    Dim RowType As String = myReader.PeekChars(2)
                    Select Case RowType
                        Case "CK"
                            myReader.TextFieldType = FieldType.FixedWidth
                            myReader.FieldWidths = FirstFormat ' 或是 myReader.SetFieldWidths(FirstFormat)
                            CurrentRow = myReader.ReadFields
                            Me.DataGridView1.Rows.Add(CurrentRow)
                        Case "PB"
                            myReader.TextFieldType = FieldType.FixedWidth
                            myReader.FieldWidths = SecondFormat ' 或是 myReader.SetFieldWidths(SecondFormat)
                            CurrentRow = myReader.ReadFields
                            Me.DataGridView2.Rows.Add(CurrentRow)
                        Case "SP"
                            myReader.TextFieldType = FieldType.Delimited
                            myReader.Delimiters = ThirdFormat ' 或是 myReader.SetDelimiters(ThirdFormat)
                            CurrentRow = myReader.ReadFields
                            Me.DataGridView3.Rows.Add(CurrentRow)
                    End Select
                Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
                    MessageBox.Show("行 " & ex.Message & " 是无效的。略过。")
                End Try
            End While
            ' 排序各个 DataGridView 控件的内容。
            DataGridView1.Sort(DataGridView1.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
            DataGridView2.Sort(DataGridView2.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
            DataGridView3.Sort(DataGridView3.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
        End Using
    End Sub
End Class

 

  • 上一篇:

  • 下一篇:
  • 【字体: 】【打印此文】【关闭窗口
      相关文章:(只显示最新16条)
    读取大文件(VB2010实例)
    读取文件(VB2010实例)
    文件移动(VB2010实例)
    获取驱动器磁盘信息(VB2010实例)
    目录搜索和目录查找(VB2010实例)
    文件搜索和文件查找(VB2010实例)
    选择文件目录(VB2010实例)
    删除文件(VB2010实例)
    复制文件(VB2010实例)
    复制目录(VB2010实例)
    临时文件暂存盘的实例
    以只读模式打开文件的实例
    OpenFileDialog属性的实例
    图形文件的数据读写操作实例
    WriteAllLines方法在文本文件中写入多行的实例
    在文本文件中写入多行文字的实例

    | 设为首页 | 加入收藏 | 联系站长 | | 友情链接 | 版权申明 |
    乐博网欢迎各种媒体转载我们的原创作品[转载请注明出处];我们鼓励更多VB.Net开发者一起加入研究与探讨;如发现文章访问错误、内容错误或版权疑问、内容有违相关法律(如涉及政治、色情、反动或散布虚假有害信息)等情况,请及时向我们举报,我们将及时纠正!
    联系邮箱:Shiny#vip.qq.com (#替换为@) QQ交流群: 40797788 [闽ICP备05014267号]