VB.NET程序设计-第10章 文件读写与管理

合集下载

《Visual Basic NET程序设计》课件第10章

《Visual Basic NET程序设计》课件第10章
【技能目标】利用VB .NET中“安装和部署项目”功能 生成WebService服务程序的安装程序。
第10章 安装和部署项目 【操作要点与步骤】 利用VB .NET中“安装和部署项目”功能生成
WebService服务程序的安装程序,其具体操作步骤如下: (1) 在中打开案例9-1中“WebService服务程序”
第10章 安装和部署项目 (2) 在“新建项目”对话框的“项目类型”中选择“安
装和部署项目”,在“模板”列表中选择“Web安装项目”, 在“名称”文件框中输入项目名称为“WebServiceSetup”, 在“位置”文本框中自动填上已打开的项目文件 translateWebService.vbproj所在的路径: “C:\Inetpub\wwwroot\translateWebService”。单击“确定” 按钮,系统将自动创建与安装程序有关的源文件。
第10章 安装和部署项目
知识点10-1-2 制作可执行的安装程序 利用集成开发环境自带的工具可以把安装所需的所有文件打包成一
个可执行文件,然后利用该可执行文件就可以将应用程序项目安装和部 署到其他计算机上。这是目前比较常用的方法,本章的案例都是采用这 种方法来制作应用程序项目的安装程序的。可执行的安装程序制作出来 以后,运行这个可执行的安装程序进行应用程序项目的安装和部署就非 常简单了。
制作可执行的安装程序可以用系统编程软件自带的工具来完成,也 可以用第三方厂家生产的专门打包工具,如最常见的Install Shield、 Setup Factory等,这些专门打包工具很适于大批量制作安装文件。
第10章 安装和部署项目
知识点10-1-3 Windows Installer服务 Windows 2000系统比Window 95/98操作系统的管理和使

VB程序设计 第10章 文件

VB程序设计 第10章 文件

读取数据 Private Sub Command2_Click() Open "d:\data\student.txt" For Input As #1 Do While Not EOF(1) Input #1, no, stuName, male, phone Picture1.Print no; Tab(5); stuName; Tab(12); male; Tab(16); phone Loop Close #1 End Sub
添加数据 Private Sub Command1_Click() Open “d:\data\student.txt” For Append As #1 Write #1, Text1.Text, Text2.Text, Combo1.Text, Text3.Text Close #1 MsgBox "添加成功" Text1.Text = "" Text2.Text = "" Text3.Text = "" End Sub
Visual Basic 程序设计
徐州工程学院
10.3 文件的操作
用Write # 语句和Print # 语句写入的数据文件比较
说明:
Write:数据项之间逗号分隔,字符串用双引号括起来 Print:无逗号分隔、双引号,按区(每区14个字符宽)分隔

Visual Basic 程序设计
徐州工程学院
年龄 ……
年龄
优点:存取速度快,容易更新; 缺点:占用空间大,设计程序较复杂,二进制方式存储,不方便查看
Visual Basic 程序设计
徐州工程学院
10.2 文件的分类
二进制文件:字节的集合,直接把二进制码值存放在文件中。 除了没有数据类型或者记录长度的含义外,它与随机文件很类似。

vb-10文件

vb-10文件

数据项
二、文件种类
根据数据的使用 数据文件和程序文件 根据数据的编码方式 ASCII文件和二进制文件 根据数据的访问模式 顺序存取文件和随机存取文件、二进制存取文件
1.顺序文件
顺序文件(Sequential File)是普通的文本文件。顺 序文件中的记录按顺序一个接一个地排列。读写文件存取 记录时,都必须按记录顺序逐个进行。一行一条记录(一 项数据),记录可长可短,以“换行”字符为分隔符号。
例 编程将一文本文件的内容读到文本框
假定文本框名称为txtTest,文件名为MYFILE.TXT。可 以通过下面三种方法来实现。 方法1:一行一行读 txtTest.Text = "" Open "MYFILE.TXT" For Input As #1 Do While Not EOF(1) Line Input #1, InputData txtTest.Text = txtTest.Text +InputData+vbCrLf
Private Sub Form_Activate() Open "d:\file.dat" For Random As #1_ Len = Len(member) recordnum = LOF(1) / Len(member) End Sub
Private Sub cmdAdd_Click() With member .m_ID = txtID .m_Name = txtName .m_Dep = txtDep .m_Pay = Val(txtPay) End With recordnum = recordnum + 1 Put #1, recordnum, member CurrentID = recordnum txtID = "" txtName = "" txtDep = "" txtPay = "" txtID.SetFocus End Sub

第10章 文件

第10章 文件

结束
Private Sub File1_DblClick() f1 = Shell(text1.text, 1) End Sub Private Sub Form_Load() Combo1.AddItem "*.exe" Combo1.AddItem "*.com" Combo1.AddItem "*.bat" Combo1.Text = Combo1.List(0) Combo1_Click End Sub
结束
说明: 说明:
当驱动器列表框中改变驱动器时,就会触发 Change事件,执行Drive1_Change过程,在 过程执行时就把刚选定的驱动器目录结构赋 给目录列表框Dir1的Path属性,因此在目录 列表框就“同步”显示选定的驱动器的目录 结构。 同理,当目录列表框中改变文件夹位置也会 触发Change事件,执行Dir1_Change过程, 在过程执行时就把刚选定的文件夹的路径属 性(Dir1.Path)赋给文件列表框File1的 Path属性,从而达到“同步”。
结束
2.目录列表框 2.目录列表框 用于显示当前磁盘驱动器下的目录。 最重要的属性Path(路径)属性,用来设 置和返回当前的路径。不能在设计状态时 设置。 格式: [对象.]Path[=pathName] 对象.]Path[=pathName] 其中,对象是指目录列表框名。pathName 是一个路径名字符串。 每次Path属性的改变都会引发Change事件。
结束
③FileName属性 FileName属性 FileName 用来在程序运行时设置或返回所选中的文 件名。 格式: 对象.]FileName[=pathName] [对象.]FileName[=pathName] 其中,对象是文件列表框名,pathName是 一个指定文件名及其路径的字符串。

vb10

vb10
4
10.1.2
• 常用事件: 常用事件:
目录列表框
Change事件
重新设置Path属性引发Change事件 重新设置Path属性引发Change事件 Path属性引发Change 注意:单击目录列表框中某一项目, 注意:单击目录列表框中某一项目,此项突出 显示,但并没改变Path值 显示,但并没改变Path值,只有双击才会改变 Path Path值 Path值.
16
(2)操作类型 (2)操作类型 Read: Read:只读 Write: Write:只写 ReadWrite: ReadWrite:读写皆可
10.3 顺序文件
文件名" [For 模式][Access 操作类型] Open "文件名" [For 模式][Access 操作类型] 锁定] [#]文件号 [Len=记录长度 记录长度] [锁定] As [#]文件号 [Len=记录长度] (3) 锁定 Shared(缺省 缺省) Shared(缺省) Lock Read Lock Write Lock Read Write
10
10.2
文件及其结构
文件:存储在外部介质上数据的集合。 文件:存储在外部介质上数据的集合。 按名存取 1.记录: 由若干个相互关联的数据项组成。 1.记录: 由若干个相互关联的数据项组成。 记录 例如:由学生的学习成绩信息组成的记录: 例如:由学生的学习成绩信息组成的记录:
学号 姓名 数学成绩 语文成绩 物理成绩 总分
14
10.2
文件及其结构
(3) ASCII码文件 ASCII码文件 数据是以ASCII码进行编码储存的。 数据是以ASCII码进行编码储存的。 ASCII码进行编码储存的 (4) 二进制文件(Binary File) 二进制文件(Binary 数据是以二进制格式进行编码保存的。 数据是以二进制格式进行编码保存的。

VB程序设计——10 文件

VB程序设计——10 文件

常见事件
控件名 DriveListBox (Drive1) DirListBox (Dir1) FileListBox (File1) 事件 Change Change 含义 选择一个新的驱动器时被触发 双lick
【例8-1】编写一个图片浏览器。使用一个驱动器列表框、一个 目录列表框一个文件列表框、一个组合框和一个图像框。
8.2 文件控件

驱动器列表框(DriveListBox)
目录列表框(DirListBox) 文件列表框(FileListBox)
常见属性
控件名 属性 含义
当前选定的 驱动器名 当前路径 当前打开的 文件夹路径
示例
Dirve1.Drive="C" Dir1.Path="C:\Windows "
8.1.4 文件的操作
1. 文件的打开或创建
Open 文件名 For 方式 [Access 存取类型] [锁定] As [#]文件 _ 号 [Len=记录长度]
2. 文件的读写
文件的读操作是指把文件中的数据传送到内存的操作,文 件写操作是指把内存中的数据存入磁盘文件的操作
3. 文件的关闭
Close [[#]文件号] [, [#]文件号] ...
第八章 文件
主讲:张静
为什么在程序中读入文件?

能解决数据量大问题

8.1 文件的基本概念 8.2 文件控件


8.3 顺序文件
8.4 随机文件 8.5 二进制文件

8.1.1 顺序文件和随机文件(文件结构)
记录按顺序一个接一个存放。 对顺序文件进行读写操作时,总是从文件头开始, 顺序读写。
4. FreeFile 函数

vb第十章

vb第十章
14
第10章 数据文件 章
10.2 顺序文件 顺序文件的读出操作
Line Input # 语句 格式: 格式:Line Input # <文件号>, <变量> 功能: 功能:从已经建立的顺序文件中读取一行数据
Line Input # 语句与Input # 语句功能相似,区 别是Input # 语句一次从文件中读取一条记录的相关字 段,而Line Input # 语句一次读取文件中的一行字符 串。Line Input # 语句一般是用来读取文本文件。
19
第10章 数据文件 章
10.2 顺序文件 顺序文件的相关函数和语句
Seek 函数 格式:Seek (<文件号>) 格式 功能:返回指定文件中下一个读写操作的位置 功能 Seek 语句 格式:Seek # <文件号>, n 格式 功能:设置指定文件中下一个读写操作的位置 功能
20
第10章 数据文件 章
8
第10章 数据文件 章
10.2 顺序文件 顺序文件的写入操作
Write # 语句 格式:Write #文件号, [输出项表列] 格式 Print 功能:与Print # 语句一样,将一条记录写入文件 功能
Write #与Print #两个语句的区别是,Write # 语句数据项间只能用逗号隔开,系统会自动地在各数据 项间插入逗号,给字符串加双引号,且不在正数前加空 格(符号位)。
10
第10章 数据文件 章
10.2 顺序文件 顺序文件的写入操作 【例10-2】向顺序文件中写入多条记录 - 】
Private Sub CmdOutput_Click() Dim Course As String, Score As Single Open App.Path & "\ stu.dat" For Output As #1 Do Course = InputBox("Enter Course (end is exit):") If LCase(Course) = "end" Then Exit Do Score = Val(InputBox("Enter Score")) Write #1, Course, Score Loop Close #1 End Sub

第十章vb6.0 文件管理及操作

第十章vb6.0 文件管理及操作

第十章文件管理及操作10.1 文件系统的基本操作VB提供了一些用于处理文件系统的语句,使用这些语句可以在VB应用程序中进行更改当前目录、建立或删除目录、删除文件等基本操作。

目录操作1.获取指定驭动器的当前路径。

要获取某驱动器的当前路径,可以使用CurDir函数,它的语法是:CurDir [drive].参数drive是指要获取信息的驱动器名称,如果忽略该参数,则CurDir函数返回当前驱动器的当前路径。

例如,如果驱动器E;的当前路径为“E: \Too1\Qicq”,则如下语句将在窗体上显示“E:\Too1\Qicq”.Print CurDir(“E”)。

2.更改当前驱动器。

使用ChDrive语句可以更改当前驱动器,其语法为:ChDrive drive.参数drive为要指定为当前驱动器的名称,例如,将驱动器A:指定为当前驱动器的语句为:ChDrive “A”.3.更改当前路径。

使用ChDir语句可以更改当前路径,其语法为:ChDir Path.参数Path为要指定的路径,如果在路径中没有指定驱动器的名称,则表示驱动器为当前驱动器。

例如,将路径C: \Windows指定为当前路径的语句为:ChDir “C:\Windows”.4.建立与删除目录。

使用MkDir语句可以创建一个新的目录,其语法为:MktDir Path.参数Path用来指定所要创建的目录以及目录所在的路径。

Path可以包含驱动器。

如果没有指定路径,则MkDir会在当前路径下创建新的目录。

例如:MKDir “C:\aa”在C盘中创建目录aaMKDir “C:\Windows\bb”在C盘windows目录中创建子目录bbMKDir “CC”在当前路径下创建目录cc使用RmDir语句可以删除某一空目录,其语法为:RmDir Path.例如:MKDir “C:\aa”删除C盘中目录aaMKDir “C:\Windows\bb”删除C盘windows目录中的子目录bbMKDir “CC”删除当前路径下创建目录cc注意:RmDir语句只能用来删除空的目录,如果目录中还包含有子目录或文件,则必须先删除子目录和文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第10章 文件读写和管理
赵旭
2019年3月20 日
本章学习目标:
□ 了解文件的分类 □ 掌握文本文件和二进制文件的读写技术 □ 掌握文件和文件夹的管理方法
10.1 文件和System.IO模型概述
10.1.1 文件的分类
按文件中的数据格式,可分成“二进制文件”和“文本文件”;按 文件的存取方式,可分成“顺序文件”和“随机文件”。 (1) 顺序文件
向二进制文件中写入数据。
File
提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建FileStream对象。
FileInfo
提供创建、复制、删除、移动和打开文件的实例方法,并且帮助创建 FileStream 对象。无法 继承此类。
Directory
提供用于创建、移动和遍历目录和子目录的静态方法。无法继承此类。

说明
FileStream
以字节流的形式访问文件,既支持同步读写操作,也支持异步读写操作。
StreamReader
从文本文件中读入字符,并且可以定义字符的编码方式,
StreamWriter
向文本文件中写入字符,也可以定义字符的编码方式。
BinaryReader
从二进制文件中读取数据。
BinaryWriter
指定操作系统应创建新文件。如果文件已存在,它将被改写。如果文件不存在,则使用 CreateNew ;否则使用 Truncate。
指定操作系统应创建新文件。如果文件已存在,则将引发 IOException。
指定操作系统应打开现有文件。打开文件的能力取决于 FileAccess 所指定的值。如果该文件不存 在,则引发 System.IO.FileNotFoundException。
( 1 ) 使 用 New 方 法 创 建 StreamReader/StreamWriter 对 象,将它与文本文件关联(打开文件的数据流通道)。
(2)调用对象的成员方法从文件中读写字符 (3)关闭StreamReader/StreamWriter对象和数据流。
1.StreamReader类 StreamReader又称为读取器,它提供了多个用于创建对
(m2s.)msdnSqttr.rv8e0.achms/WMSr.MiSDtN.ev r类写文件的方法 80/DEVFX.v20.chs/cpref 用指定的编码及默认缓冲区大小,为指定的流初始化 StreamWriter 类的新实例
8/html/C_Sys方te法m_IO_StreamRea 。
ReadChar
从当前流中读取下一个字符,并根据所使用的 Encoding 和从流中读取的特定字符,提升流 的当前位置。
ReadChars
从当前流中读取 count 个字符,以字符数组的形式返回数据,并根据所使用的 Encoding 和从流中读取的特定字符,提升当前位置。
ReadDecimal
从当前流中读取十进制数值,并将该流的当前位置提升十六个字节。
New方法重载
StreamReader (String)
StreamReader (String, Encoding)
StreamReader (Stream)
StreamReader (Stream, Encoding)
功能说明
以指定的文件名初始化 StreamReader 类的新实例。 以指定的文件名和字符编码初始化 StreamReader 类的一个 新实例。 以指定的流初始化 StreamReader 类的新实例。
(ea2m)ReaBdehirtn_mcat(roSrty_rR1e_ae7ma8)6d4ec1r2类9. 的常用方法
方法
功能说明
ms.msdnqtr.v80.chs/MS.MSDN
.pvr8e0f/8PM/eShRe.tekNmaCEldhT/aDCrE_e2m0_.I返已cOh_回重sS/t下载cr 一。基个从于可基所用础提的流供字中的符读流,取和并字特且符定不,的提并字升提符字升编节流码或的,字当初符前始的位化位置置B。i。naryReader 类的新实例。
图10-2 读取文本文件
2.StreamWriter类 StreamWriter又称为写入器,用于向文本文件中写入字符,
也可以指定字符的编码方式。 (1) StreamWriter类的New方法
New方法重载 StreamWriter (String)
功能说明
使用默认编码(UTF-8)和缓冲区大小,为指定文件名初始化 StreamWriter 类的 新实例。
以指定的流和字符编码初始化 StreamReader 类的新实例。
注意:调用New方法而不指定字符编码,则程序采用默认 的UTF-8编码读取文件。
(2) FileStream类 FileStream类用于创建指向某个文件的流对象,基本的书写形式为: Dim fs as New FileStream( “D:\VS\Chapter10\文本文件.txt", FileMode.Op en, FileAccess.ReadWrite ) 第一个参数为文件全路径名。第二个参数为FileMode枚举类型值,用于指定访问 文件的模式,第三个参数为FileAccess枚举类型值,用于指定访问文件的权限
ms.msdnqtr.v80.chs/MS.MSDN.v 80/DEVFX.v20.chs/cpref 8/html/C_System_IO_StreamRea
der_ctor_1_7864c129.htm (Stream)
用默认编码(UTF-8)及默认缓冲区大小,为指定的流初始化 StreamWriter 类的 一个新实例。
ReadDouble
从当前流中读取 8 字节浮点值,并使流的当前位置提升 8 个字节。
(2)BinaryReader类的常用方法
方法
功能说明
ReadInt16
从当前流中读取 2 字节有符号整数,并使流的当前位置提升 2 个字节。
ReadInt32
从当前流中读取 4 字节有符号整数,并使流的当前位置提升 4 个字节。
【例10-2】修改例10-1,用其它 方法读取文件。 设计界面如图10-2,点击第一个 按钮,通过循环从文件中一个一 个读取字符,直到文件结尾,Str eamReader类中有一个只读属性En dOfStream,其值为true表示已到 文件结尾,其值为false表示未到 结尾。点击第二个按钮,读取文 件的前10个字符到Char型数组。 点击第三个按钮,通过循环一行 一行读取字符,直到结尾。
象和读取文件的方法 。【例10-1】读取文本文件,将其内 容显示在窗体中。
图10-1 读取文本文件 具体操作步骤和源程序参见教材
(1) New方法 建立StreamReader对象与文件的关联,以及打开数据
流通道,是通过向New方法传递参数完成的。
表10-2 StreamReader类的New方法
10.1.3 System.IO模型概述
System.IO实际上是一个文件操作的类库,这些类提供了多种对文件的
读写方法,以及对文件和文件夹的管理方法,这些类被声明在System.IO命
名空间中,要使用这些类,必须引入该命名空间,其中常用的类及其功能如
表10-1所示。
表10-1 System.IO模型中常用的类

Append
Create CreateNew
Open OpenOrCreate
Truncate
表10-3 FileMode值及其说明
功能说明
打开现有文件并查找到文件尾,或创建新文件。FileMode.Append 只能同 FileAccess.Write 一起 使用。任何读尝试都将失败并引发 ArgumentException。
【例10-3】设计窗体如图10-3,将左边文本框的数据写入文 件D:\VS\Chapter10\文本文件2.txt中,在右边文本框中显示 文件的内容。
图10-3 写入文本文件 具体操作步骤和源程序参见教材
10.2.2 二进制文件的读写操作
二进制文件通常扩展名为“dat”,一般利用BinaryReader类从二进制文件 中读取数据,利用BinaryWriter类向二进制文件中写入数据。
指定操作系统应打开文件(如果文件存在);否则,应创建新文件。
指定操作系统应打开现有文件。文件一旦打开,就将被截断为零字节大小。
方法 Read ReadWrite Write
表10-4 FileAccess值及其说明 功能说明
对文件的读访问。可从文件中读取数据。 对文件的读访问和写访问。可从文件读取数据和将数据写入文件。 文件的写访问。可将数据写入文件。
1.BinaryReader类 (1) BinaryReader类的New方法
New方法重载
功能说明
ms.msdnqtr.v80.chs/MS.MSDN
.v80/DEVFX.v20.chs/c pref8/html/C_System_IO_Str
基于所提供的流,用 UTF8Encoding 初始化 BinaryReader 类的新实例。
(3) 读取方法
方法
Read Read(buffer, index,
count) ReadLine ReadToEnd
功能说明
读取输入流中的下一个字符。 从 index 开始,从当前流中将最多的 count 个字符读入 buffer。 从当前流中读取一行字符并将数据作为字符串返回。 从流的当前位置到末尾读取流。
DirectoryInfo
提供用于创建、移动和遍历目录和子目录的实例方法。无法继承此类。
10.2 文件的读写操作
10.2.1 文本文件的读写操作
StreamReader 类 和 StreamWriter 类 分 别 以 流 的 方 式 读写文本文件,读写时可以指定字符的特定编码。默认编 码为 UTF-8,而不是本地系统的 ANSI 编码。UTF-8 可以 正确处理 Unicode 字符并在各主机的操作系统中提供一 致的结果。读写文本文件的基本步骤为:
相关文档
最新文档