-
vb.net 教程 4-8 文本文件读写 1
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
上一节重点学习了文本的编码,本节开始学习文本文件的读写。
通常情况下,文件可以分为文本文件和二进制文件。
文本文件就是可以直接用记事本打开看到内容的文件,比如后缀为txt、htm、log等等。
其余的文件就是二进制文件,比如.exe、.dll、.mp3等等。
总的来说,文本文件读写相对二进制文件读写简单点。
通常的做法是建立一个与文件关联的filestream,然后使用StreamReader读取或者StreamWriter写入。
本节以及后面几节采用几种不同的方法来说明文本文件读写的方法。
注意的是,为了详细说明,采用的是读写方法对应的形式,并不是说A种读文件一定对应A种写文件,
A种读文件可以对应B种写文件的,在实际使用时,请怎么简单怎么用。
窗体设计界面如下:
同时请加入一个 OpenFileDialog控件和一个SaveFileDialog控件。
两个ComboBox中均在Item中加入:方法1至方法6。DropDownStyle为DropDownList。
由于涉及文件操作和文本编码,
请在窗体顶部 Public Class Form1 上面中加入代码:
Imports System.IO
Imports System.Text
窗体载入时,
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
With OpenFileDialog1
.Filter = "文本文件|*.txt"
.FileName = ""
.Multiselect = False
End With
SaveFileDialog1.Filter = "文本文件|*.txt"
SaveFileDialog1.FileName = ""
cbRead.SelectedIndex = 0
cbWrite.SelectedIndex = 0
End Sub
代码中使用了With...End With,可以简化代码。
读取按钮按下时,根据cbRead的选项来选择读取的方法:
Private Sub btnRead_Click(sender As Object, e As EventArgs) Handles btnRead.Click
Dim FilePath As String
If OpenFileDialog1.ShowDialog <> DialogResult.OK Then
Exit Sub
End If
FilePath = OpenFileDialog1.FileName
lblFilePath.Text = "读取文件:" & FilePath
txtFile.Text = ""
Select Case cbRead.SelectedIndex
Case 0
Call readText1(FilePath)
Case 1
Call readText2(FilePath)
Case 2
Call readText3(FilePath)
Case 3
Call readText4(FilePath)
Case 4
Call readText5(FilePath)
Case 5
Call readText6(FilePath)
End Select
End Sub
写入按钮按下时,根据cbWrite的选项来选择写入的方法:
Private Sub btnWrite_Click(sender As Object, e As EventArgs) Handles btnWrite.Click
Dim FilePath As String
If SaveFileDialog1.ShowDialog <> DialogResult.OK Then
Exit Sub
End If
FilePath = SaveFileDialog1.FileName
Select Case cbWrite.SelectedIndex
Case 0
Call writeText1(FilePath)
Case 1
Call writeText2(FilePath)
Case 2
Call writeText3(FilePath)
Case 3
Call writeText4(FilePath)
Case 4
Call writeText5(FilePath)
Case 5
Call writeText6(FilePath)
End Select
lblFilePath.Text = "写入文件:" & FilePath
End Sub
学习更多vb.net知识,请参看 vb.net 教程 目录
————————————————
版权声明:本文为CSDN博主「VB.Net」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/uruseibest/article/details/75208480
最新更新
求1000阶乘的结果末尾有多少个0
详解MyBatis延迟加载是如何实现的
IDEA 控制台中文乱码4种解决方案
SpringBoot中版本兼容性处理的实现示例
Spring的IOC解决程序耦合的实现
详解Spring多数据源如何切换
Java报错:UnsupportedOperationException in Col
使用Spring Batch实现批处理任务的详细教程
java中怎么将多个音频文件拼接合成一个
SpringBoot整合ES多个精确值查询 terms功能实
数据库审计与智能监控:从日志分析到异
SQL Server 中的数据类型隐式转换问题
SQL Server中T-SQL 数据类型转换详解
sqlserver 数据类型转换小实验
SQL Server数据类型转换方法
SQL Server 2017无法连接到服务器的问题解决
SQLServer地址搜索性能优化
Sql Server查询性能优化之不可小觑的书签查
SQL Server数据库的高性能优化经验总结
SQL SERVER性能优化综述(很好的总结,不要错
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比