第15章 文件处理技术 变量和数组只能临时存储数据,且数据量很小, 当应用程序终止,数据就会丢失。如果需要将数 据长期存储或者存储大量数据,就需要用到文件。 文件维护的数据通常称为持久数据,存储在计算 机的辅助存储设备中,如磁盘、光盘等。许多程 序都要与外部数据进行交互,如数据库、XML,甚 至文本文件,因此文件操作是软件开发中必不可.

Slides:



Advertisements
Similar presentations
達悟族報告 作者 : 林琪崴, 許原碩 座號 :13 號,14 號 原碩負責 : 簡介, 傳說, 圖驣, 達悟族飛魚季, 琪崴 : 地理位置, 土地利用方式, 飲食文化, 豐收祭.
Advertisements

主讲:张天明 影像艺术工程师. 声音的聆听 指出听到的是什么物体发出的声音,这一 声音是在什么样的空间环境中传播的。 一、 答案: 1 、打气筒打气的声音 2 、手打打气筒给足球打气的声音 3 、手打打气筒给自行车轮胎打气的声音 4 、七次(七声)打气筒打气的声音 5 、(气流)摩擦的声音 6 、猪在发急时的叫声.
概念導向命題技巧與試題分析 臺灣師大地理系 陳國川. 教學評量是一種『抽樣調查』 實施教學評量時,需具備二項條件: 其一,瞭解命題的理論及其實踐的方法; 其二,瞭解各種題型的功能與命題方式。 壹、前言.
高峰植物園行前解說 2005/12/07 By 羽明. 陽性先驅物種 陽性植物 --- 陽光需求量大 陰性 ( 或耐蔭性 ) 植物 --- 陽光需求量少, 或 日照太強反而無法生存 先驅植物 --- 森林大火或土石流地震後產生的 裸露空地, 先生長出來的植物.
第2章第2章 第 1 节 生物与非生物. [ 猜谜语 ] 名字叫做牛, 不会拉犁头; 说我力气小, 背着房子走。 ( 打一动 物)
報 告 人 : 胡 嘉 琪 ˙ˇ˙ 、 王 紫 庭 = ˇ = 台灣夜市文化 作者: 郭明澤‧私立明道高中‧綜二 4 班 馬炯修‧私立明道高中‧綜二 4 班.
5 ˙ 1 第五章 生物的協調作用 5 ‧ 1 神經系統. 5 ˙ 1 人體的神經系統 1. 協調動物生理反應的系統: 神經 系統、 內分 泌 系統。 2. 神經系統負責 統整 和 協調 。分為 中樞 神經 和 周圍 神經。 (1) 中樞神經包括 腦 和 脊髓 。 (2) 周圍 神經包括 腦神經 和.
从《西游》看大学生的成长 主讲人:颜廷学 时间: 地点:演艺大楼流行剧场.
新员工培训 设计部 思安新能源股份有限公司 主讲人: 韩少华 时 间:
前言:河流的主要功能 1. 交通運輸 優點-運費低廉,維護費用低 缺點-速度慢,裝載費時,不能到達生產區或消費區 的末端,需要轉載。 尚受到河流網路,河口位置,水量變化,河床 狀況,冰封時期 2. 水資源系統.
幽夢影~張潮 小佑子工作室 關於《幽夢影》 作者張潮,記寫他個人對人生世事之體驗透悟的 書。 書中文字,全為「語錄」形式,屬於格言,也是 最精鍊的隨筆。 全書可分為九卷:論才子佳人、論人與人生、論 朋友知己、論讀書、論閒情逸趣、論立身處世、 談文論藝、論四時佳景、論花鳥蟲魚。
成人高考高起点 语文 冲刺班 主讲老师:邓君媚. 复习指导 高考语文含四大块内容: 语言知识和语言表达,古代诗文阅读,现 代文阅读,写作。 在全面复习的前提下,按照《考试大纲》 的要求,要做好思路整理,建立高考的整体框 架的工作。认真归纳整理基础知识、培养基本 能力,复习做到有的放矢。 复习指导.
老师,我可以不 爱 吗? 山东省淄博市张店区实验中学 杜桂兰 星期一的早晨,我紧张而又兴奋,因为 我的赛教课就要开始了。 这是一次级别很 高 的竞赛。
财政部 国家税务总局 中国人民银行(央行) 银监会 证监会 保监会. 法定存款准备金率 利率 税率 政府投资 楼继伟,周小川,易纲.
油蔴菜籽 指導老師:陳瑜霞 學生: 商設一甲 謝旻璇 車輛三乙 許勝傑 工管四甲 彭凱雲. 作者介紹: 廖輝英( 1948 年生)臺大中文系畢業。 從初三開始寫作,早期作品多以散文為主,大四 畢業時才暫時封筆。畢業後進了廣告界,成為廣 告文案好手,後為企畫主管,在廣告界縱橫十餘 年,也曾任職於建設公司,辦過社區報高雄一周。
教育技术装备统计系统 使用培训 教育部基础教育司 教育部教育管理信息中心.
硕士论文开题报告 煤炭企业物流信息系统的 研究与设计 指导老师: 学生姓名: 学 号:
目錄 服務地點 南寮 世光教養院 飛鳳山 長安養老院 尖石國小 內灣 大華停車場 上智國小 二重國中 班級 領隊教師 參與人數 (人次)
“三生教育”专题 生命·生存·生活.
ooxx這個遊戲程式,非常的簡單只要你小時候會玩井字遊戲即可把電腦打敗,可以說是一種考智力取勝的遊戲。
可爱的蜗牛 一、蜗牛冬眠 二、蜗牛进食 三、蜗牛排泄 四、蜗牛呼吸.
第 7 章 文 件.
寻觅节日诗情.
——奧科特公開及內部培訓 系列課程(三)之十一
1.了解VB6.0的功能特点 、集成环境。 2.理解面向对象程序设计的几个概念。 3.掌握VB应用程序设计的步骤。
比爾蓋茲導讀.
102學年度預算編製說明會 主辦單位:會計室 102/02/22.
股市不傳之秘 甘氏矩陣圖/價格推算 簡介、基礎學習步驟 1、學習觀念 2、基礎看圖法 A.大數推算 B.基礎角度線推算.
Visual Basic 期中報告 組長:沈亞臻 組員:蔣佳育 張庭茹
经 络 学.
Ch03 VB.NET語法建立ASP.NET 網頁程式設計.
第9课 北美大陆上的新体制 导入新课 新课教学 课堂小结 知识结构 巩固练习
第13章 檔案與資料夾處理 13-1 System.IO類別的基礎 13-2 檔案與資料夾操作 13-3 文字檔案的讀寫
CH11.
Visual Basic 2010 程式設計16堂特訓 第七堂 VB的迴圈流程控制.
Visual Basic 6.0 學習範本 第三章 基本資料型態.
第二章 Visual Basic语言基础.
1、数组的概念 2、静态数组 3、动态数组 4、数组的基本操作 5、控件数组
Visual Basic 程序设计 第12章文件处理
程式語言 -Visual Basic 變數、常數與資料型態.
第14章 建立網路應用程式 14-1 瀏覽器的建立 14-2 檔案下載器 14-3 寄送電子郵件 14-4 檢查POP 3的電子郵件.
遠東科技大學資訊工程系 王善揚 可嵌入物件題庫系統 設計與開發 遠東科技大學資訊工程系 王善揚
第十三章 文件和注册表操作.
課程名稱:資料庫系統 授課老師:李春雄 博士
初识Visual Basic.
讲课人:王璞 浙江工商职业技术学院.
第14章 伺服器檔案、電子郵件處理與Ajax 14-1 資料夾與檔案操作 14-2 文字檔案的讀寫 14-3 電子郵件與附檔處理
第十二章 RS-GIS混合编程 本章讨论三个问题:
視窗程式設計簡介-VB、Visual Studio
文件流. 文件流 文件流 Stream FileStream BufferedStream MemoryStream NetworkStream …… 所有流的抽象 Stream FileStream BufferedStream MemoryStream NetworkStream ……
第7章 Web伺服器檔案與XML文件的處理 7-1 System.IO名稱空間的基礎 7-2 伺服器的資料夾與檔案操作
第5章 .NET框架类 5.
新觀念的 VB6 教本 第 6 章 資料型別.
例外處理與 物件序列化(Exception Handling and Serialization of Objects)
檔案讀寫與例外處理 (File IO and Exception Handling)
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
第 十二 章 C# 中的文件处理.
一、選擇題 ( )1、下列敘述何者錯誤? (A)由彈弓射出的石子具有能量 (B)一物體具有作功的本領,則此物具有能 量 (C)被壓縮的彈簧具有能量,被拉長的彈簧 則不具有能量 (D)將地面的重物,吊到高處則此物具有能 量。 C.
程序语言的现在和未来 孙志岗.
第七章 文件 本章重点 7.1 文件管理控件 7.2 文件处理 7.3 练习.
第1章 Visual Basic 简介 郭清溥.
$15 文件操作. $15 文件操作 主要内容 文件系统概述 驱动器、目录和文件 文件流和数据流 自定义IO操作.
算法与程序设计.
一個基於Web Service的 洪氾預警系統
VB与数据库 数据库连接与查询.
数数据的基本操作 电子工业出版社.
講師:梁家豪 動態網頁設計 ASP & 資料庫應用 講師:梁家豪
所得稅法第14條、第126條修正條文 薪資所得計算方式二擇一 定額減除 特定費用減除 維持現行薪資所得特別扣除額20萬元減除方式
openFileDialog1.ShowDialog() 對話匣
104學年度第二學期 燈音開課 03/14燈光開課.
Presentation transcript:

第15章 文件处理技术 变量和数组只能临时存储数据,且数据量很小, 当应用程序终止,数据就会丢失。如果需要将数 据长期存储或者存储大量数据,就需要用到文件。 文件维护的数据通常称为持久数据,存储在计算 机的辅助存储设备中,如磁盘、光盘等。许多程 序都要与外部数据进行交互,如数据库、XML,甚 至文本文件,因此文件操作是软件开发中必不可 少的任务。对于程序设计语言来说,文件处理也 是最重要的能力之一。只有通过文件处理,语言 才能支持需要处理大量持久数据的大型应用程序 开发。本章介绍VB.NET中的强大丰富的文件处理 技术。

章节内容 15.1 文件概述 15.2 System.IO名称空间 15.3 My.Computer.FileSystem对象 15.1 文件概述 15.2 System.IO名称空间 15.3 My.Computer.FileSystem对象 15.4 实例:图片浏览器程序

15.1 文件概述 文件是存储在某种介质上数据的集合, 就其本身来讲,文件就是磁盘上的一系 列相关的数据字节。 15.1 文件概述 文件是存储在某种介质上数据的集合, 就其本身来讲,文件就是磁盘上的一系 列相关的数据字节。 VB.NET中将文件视为一个顺序字节的流 ,其结构如所示。每个文件都结束于一 个EOF(End Of File文件尾)标记。 需要注意的是,文件和文件流并不是相 同的概念。

3种类型的文件访问 顺序方式,用于在连续的块中读取和写 入文本文件。 随机方式,用于读取和写入结构为固定 长度记录的文本或二进制文件。 二进制方式,用于读取和写入任意结构 的文件。

VB.NET中的3种文件操作方法 第一种是使用Visual Basic运行时函数 进行文件访问(VB传统方式直接文件访 问)。 第二种是通过.Net中的System.IO模型 访问。 第三种是通过文件系统对象模型FSO访 问。

15.2 System.IO名称空间 在VB.Net中与文件操作有关的类都集中 在System.IO名称空间中。图15-1是此 名称空间的类图,其中包含了很多用于 文件处理的类。 要使用这些类的话,需要在项目中引入 该名称空间。 Imports System.IO

15.2.1 文件与目录操作 File类提供文件典型操作的共享方法, 如复制、移动、重命名、创建、打开、 删除和追加到文件等,而FileInfo类则 提供相同功能的实例方法。 方法 说明 Copy( ) 将文件从源位置复制到目标位置 Create( ) 在规定的路径上创建文件 Delete( ) 删除文件 Open( ) 在规定的路径上返回FileStream对象 Move( ) 将规定的文件移动到新位置。可以在新位置为文件规定不同的名称

File类中的方法都是共享方法,可以直 接由类名来引用。 而FileInfo类则需要先实例化,然后通 过对象吗引用其方法。

类似的,Directory类和DirectoryInfo 类也具有类似的关系。二者均提供目录 的典型操作,如创建、删除、移动、获 取当前目录和文件等。区别在于, Directory类提供共享方法,而 DirectoryInfo类提供实例方法。 方法 说明 CreateDirectory( ) 创建具有规定路径的目录 Delete( ) 删除规定的目录以及其中的所有文件 GetDirectories( ) 返回表示当前目录下的目录名的string对象数组 GetFiles( ) 返回在当前目录中的文件名的string对象数组 GetFilesSystemEntries( ) 返回在当前目录中的文件和目录名的string对象数组 Move( ) 将规定的目录移动到新位置。可以在新位置为文件夹规定一个新名称

15.2.2 文件的流操作 流提供一种向文件写入字节和从文件中 读取字节的方式。VB.NET将文件视为一 个字节流。要对文件进行读写操作,就 需要使用流。

三种基本流操作 从流读取。读取是从流到数据结构(如 字节数组)的数据传输。 向流写入。写入是从数据源到流的数据 传输。 查找。查找是对流内的当前位置进行的 查询和修改。

文本文件的流操作:StreamReader和StreamWriter类 StreamReader和StreamWriter类使用特 定的编码从字节流中读取字符和往字节 流中写入字符。其默认编码为UTF-8。 这两个类在使用之前需要实例化,通常 使用打开文件或创建文件的操作来获取 该类的实例。

二进制文件的流操作: BinaryReader和BinaryWriter类 下面代码实现向二进制文件写入1到10的数字。 1 ' 写入二进制文件 2 Dim filename As String = "c:\file.bin" ' 文件路径 3 ' 如果文件存在就先删除,否则新文件就不能创建 4 If (File.Exists(filename)) Then 5 File.Delete(filename) 6 End If 7 ' 创建文件流,新建方式 8 Dim fs As New FileStream(filename, FileMode.CreateNew) 9 ' 以二进制方式写文件 10 Dim bw As New BinaryWriter(fs) 11 For i = 0 To 9 12 bw.Write(i) 13 Next 14 bw.Close( ) 15 fs.Close( )

下面代码使用StreamWriter类向文本文件写入内容。 1 ' 写入文本文件 2 Dim path As String = "c:\test.txt" ' 文件全路径 3 Dim sw As New StreamWriter(path) 4 sw.Write("今天是: ") 5 sw.WriteLine(DateTime.Now) 6 sw.Close( )

下面这段代码就是将上小节创建的二进制文件读取并显示出来。 1 ' 读取二进制文件 2 Dim filename As String = "c:\file.bin" ' 文件路径 3 ' 创建文件流,打开读取 4 Dim fs As New FileStream(filename, FileMode.Open, FileAccess.Read) 5 ' 从二进制文件中读取整数 6 Dim br As New BinaryReader(fs) 7 For i = 0 To 9 8 Console.WriteLine(br.ReadInt32( )) 9 Next 10br.Close( ) 11fs.Close( )

15.3 My.Computer.FileSystem对象 属性 说 明 CurrentDirectory 获取或设置当前目录 Drives 获取或设置有关驱动器的信息 SpecialDirectories 返回My.Computer.FileSystem.SpecialDirectories对象,它可用于访问特殊的目录,如Temp或MyDocuments等

返回一个 Boolean,指示文件是否存在 文件操作 方法 说明 CopyFile 复制文件 DeleteFile 删除文件 FileExists 返回一个 Boolean,指示文件是否存在 GetFileInfo 返回指定路径的 FileInfo 对象 MoveFile 移动文件 RenameFile 重命名文件

文件读写 方法 说明 OpenTextFieldParser 打开TextFieldParser OpenTextFileReader 打开TextReader OpenTextFileWriter 打开TextWriter ReadAllBytes 从二进制文件中读取 ReadAllText 从文本文件中读取 WriteAllBytes 写入到二进制文件 WriteAllText 写入到文本文件

目录操作 方法 说明 CombinePath 以String形式返回格式正确的组合路径 CopyDirectory 复制目录 CreateDirectory 创建目录 DeleteDirectory 删除目录 DirectoryExists 返回一个Boolean指示目录是否存在 FindInFiles 返回字符串的只读集合,这些字符串表示包含指定文本的文件的名称 GetDirectories 返回一个String集合,该集合表示一个目录中的子目录的路径名称 GetDirectoryInfo 返回指定路径的DirectoryInfo对象 GetDriveInfo 返回指定路径的DriveInfo对象 GetFiles 返回一个只读String集合,该集合表示一个目录中的文件的名称。 GetParentPath 返回一个String,它表示所提供路径的父级绝对路径 MoveDirectory 移动目录 RenameDirectory 重命名目录

15.4 实例:图片浏览器程序