当前位置: 网学 > 编程文档 > VB > 正文

在Visual Basic .NET中文件I/O选项

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式
言,不熟悉公共语言运行时可能会遇到一些困难。如果您是其中一员,您可能更倾向于使用您所熟知的方法。
 

  实现方法

  如上所述,许多 .NET 框架类(如 FileIOPermission)对于使用文件和目录进行工作的 Visual Basic 开发人员都十分有用。Imports 语句允许您在不使用完全限定名称的情况下引用命名空间中的类。

  代码示例

  以下示例使用 StreamReader 类来读取文本文件的内容。

Imports System
Imports System.IO
Function ReadTextFile(ByVal path As String) As String
 Dim sr As System.IO.StreamReader
 Dim Contents As String
 sr = New StreamReader(path)
 Contents = sr.ReadToEnd()
 sr.Close()
 Return Contents
End Function

以下代码与前面的示例顺序相反,它使用与 StreamWriter 类相同的方法来写入文本文件。

Imports System
Imports System.IO
Sub WriteTextFile(ByVal path As String, ByVal value As String)
Dim sr As StreamWriter
Dim Contents As String
 sr = New StreamWriter(path)
 sr.Write(value)
 sr.Close()
End Sub

  以下示例演示了如何使用 FileSystemWatcher 类来监视目录的变化。它声明 FileSystemWatcher 类的一个实例,提供要监视的路径,指示要监视的内容,然后创建一个事件处理程序来监视新文件的创建。

Imports System
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization
Class WatchForNewFiles

  Shared Sub Main()
   Dim fw As New System.IO.FileSystemWatcher()
   '' 要监视的路径。
   fw.Path = "C:\"

   '' 监视文件。
   fw.NotifyFilter = System.IO.NotifyFilters.FileName
   fw.IncludeSubdirectories = True

   '' 添加事件处理程序以监视文件创建。
   AddHandler fw.Created, _
    New System.IO.FileSystemEventHandler(AddressOf OnFileEvent)
   fw.EnableRaisingEvents = True
   Console.ReadLine()
  End Sub


'' 新文件创建时生成的事件。
  Shared Sub OnFileEvent(ByVal source As Object, ByVal e As _
   System.IO.FileSystemEventArgs)
   Console.WriteLine("在 C: 中创建的新文件" & e.FullPath)
  End Sub

End Class


  以下示例说明了如何使用公共语言运行时类来保存 Visual Basic .NET 类。可以使用 BinaryFormatter 和 BinaryWriter/Binary Reader 类来保存,使用这种方法效率较高,但可读性略差。也可以使用 XMLSerializer 类和 FileStream 类,使用这种方法,移植性较强且易于读取,但效率较低。

Imports System
Imports System.IO
Imports System.Xml
Imports System.Xml.Serialization
Public Module Module1
  Public Class class1
    Public classvar As Integer
  End Class

  Sub Main()
    Try
      Dim Result As Object
      '' 创建并初始化要保存的类(序列化)。
      Dim myclass1 As New class1()
      myclass1.classvar = 7
      '' 创建序列化程序。
      Dim xs As New XmlSerializer(GetType(class1))
      '' 创建文件流。
      Dim FStream As New IO.FileStream("c:\xyz.txt", _
      IO.FileMode.OpenOrCreate)
      '' 使用序列化程序编写类。
      xs.Serialize(FStream, myclass1)
      '' 将文件流的位置重置到开始位置。
      Fstream.seek(0, IO.SeekOrigin.Begin)
      '' 通过还原序列化到对象中来完成在类中的读取操作。
      Result = xs.Deserialize(FStream)
      FStream.Close()

      '' 将文件流作

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号