电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

visualbasic程式设计范例教本

35页
  • 卖家[上传人]:小**
  • 文档编号:89373507
  • 上传时间:2019-05-24
  • 文档格式:PPT
  • 文档大小:402.51KB
  • / 35 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第13章 檔案與資料夾處理,13-1 檔案與資料夾操作 13-2 循序檔案的文字檔案讀寫 13-3 隨機檔案的處理 13-4 二進位檔案的讀寫 13-5 檔案對話方塊,13-1 檔案與資料夾操作,13-1-1 顯示資料夾與檔案清單 13-1-2 顯示檔案資訊 13-1-3 檔案刪除、更名與複製,13-1-1 顯示資料夾與檔案清單-相關函數,Visual Basic提供資料夾的相關函數,可以取得資料夾下檔案與子資料夾清單,還可以建立、切換和刪除資料夾,如下表所示:,13-1-1 顯示資料夾與檔案清單-顯示檔案,例如:顯示副檔名.txt的隱藏檔案,如下所示: filename = Dir(“*.txt“, vbHidden) 上述程式碼傳回檔案屬性為隱藏(vbHidden),且副檔名為.txt的檔案名稱,傳回值是第1個符合的檔案名稱,如果需要下一個,請再次呼叫Dir()函數,但不需任何參數,如下所示: filename = Dir() 上述程式碼傳回下一個符合條件的檔案名稱。,13-1-1 顯示資料夾與檔案清單-取得檔案與資料夾清單,換句話說,配合Do/Loop迴圈,我們就可以取得檔案或子

      2、資料夾清單,如下所示: strItem = Dir(“*.*“) Do Until strItem = “ lstFiles.Items.Add(strItem) strItem = Dir() 下一個 Loop,13-1-2 顯示檔案資訊-相關函數,對於指定的檔案或資料夾,Visual Basic提供函數可以取得檔案或資料夾屬性、檔案尺寸和最後修改的日期/時間,如下表所示:,13-1-2 顯示檔案資訊-範例,GetAttr()函數同時可以取得檔案和資料夾屬性,其使用範例,如下所示: Dim fileAttr As FileAttribute fileAttr = GetAttr(txtFile.Text) 程式碼在宣告FileAttribute變數fileAttr後,呼叫GetAttr()函數取得檔案的屬性常數和,如下所示: FileAttribute.Normal Or FileAttribute.ReadOnly 上述運算式是檔案屬性常數的Or運算,其值是檔案屬性的一般和唯讀。,13-1-2 顯示檔案資訊-常數,相關屬性常數可以是FileAttribute列舉常數或Visual

      3、Basic常數,如下表所示:,13-1-3 檔案刪除、更名與複製,Visual Basic檔案處理函數可以刪除、更名和複製檔案,其參數Path是完整的檔案路徑字串,如下表所示:,13-2 循序檔案的文字檔案讀寫,13-2-1 檔案種類 13-2-2 文字檔案的讀寫,13-2-1 檔案種類-說明,檔案是儲存在電腦磁碟機中的位元組資料,當Visual Basic應用程式存取檔案內容時,需要知道位元組資料是代表字元、數值、整數或字串,取決於檔案類型。 Visual Basic提供三種檔案存取類型,如下所示: 循序檔案:擁有讀取(Input)、寫入(Output)和新增(Append)三種模式,可以將字串資料寫入與讀取文字檔案,例如:記錄檔和一般文字檔案。 隨機檔案:提供隨機(Random)模式,使用類似資料庫記錄(Records)方式來存取檔案,每一個記錄的長度是相等的。 二進位檔案:使用二進位(Binary)模式存取檔案的位元組資料,特別適用在可變長度的資料。,13-2-1 檔案種類-VB函數,在存取各類型檔案時,讀取和寫入檔案的Visual Basic函數,如下表所示:,13-2-2 文

      4、字檔案的讀寫-開啟與關閉檔案(相關函數),循序檔案最常的應用是讀寫文字檔案,例如:Windows記錄檔或【記事本】程式建立的一般文字檔案。 Visual Basic開啟、關閉或讀寫檔案時,都是使用整數的檔案編號值來識別開啟的檔案(因為程式可能同時開啟多個檔案),其相關函數,如下表所示:,13-2-2 文字檔案的讀寫-開啟與關閉檔案(開啟檔案),首先使用FreeFile()函數取得可用檔案編號後,就可以使用FileOpen()函數開啟檔案,如下: fileNum = FreeFile() FileOpen(fileNum, fileName, OpenMode.Output) 程式碼在取得fileNum檔案編號後,以OpenMode.Output模式開啟fileName檔案。當然也可以自行指定檔案編號,如下所示: FileOpen(1, fileName, OpenMode.Output) FileOpen()函數直接指定檔案編號為整數1,檔案存取類型是最後參數的OpenMode列舉常數。,13-2-2 文字檔案的讀寫-開啟與關閉檔案(列舉常數),OpenMode列舉常數以循序檔案來說有

      5、三種模式,如下表所示:,13-2-2 文字檔案的讀寫-開啟與關閉檔案(關閉檔案),在執行完檔案存取後,請執行FileClose()函數關閉檔案,如下所示: FileClose(fileNum),13-2-2 文字檔案的讀寫-讀取與寫入檔案(相關函數),當使用OpenFile()函數成功開啟檔案後,我們可以執行相關函數來寫入或讀取檔案內容。其相關函數如下表所示:,13-2-2 文字檔案的讀寫-讀取與寫入檔案(寫入),我們只需呼叫PrintLine()函數就可以將字串寫入檔案,如下所示: PrintLine(fileNum, txtLine.Text) 上述程式碼依檔案開啟的模式來處理字串寫入,Output模式清除fileNum檔案編號的檔案內容後,才寫入字串,Append模式是將字串加到檔尾,因為使用PrintLine()函數,所以在字串後會加上換行符號。,13-2-2 文字檔案的讀寫-讀取與寫入檔案(讀取),如果讀取檔案內容,也就是使用Input模式來開啟檔案,我們可以使用LineInput()函數讀取一行文字內容。 如果是讀取整個檔案內容,請配合迴圈來處理檔案讀取,如下所示: Do

      6、Until EOF(fileNum) strContent &= LineInput(fileNum) & _ vbNewLine Loop,13-3 隨機檔案的處理,13-3-1 Visual Basic的結構 13-3-2 隨機檔案的讀寫,13-3 隨機檔案的處理,循序檔案處理如同流水一般,只能單一方向從頭讀到尾或寫入檔尾,並不能回頭重寫或讀取。隨機檔案不同於循序檔案是以記錄方式來儲存,換句話說,程式允許隨機存取其中任一筆記錄或更改其資料。 因為隨機檔案是以記錄為存取單位,所以在建立隨機檔案讀寫前,我們需要建立記錄結構,即Visual Basic結構。,13-3-1 Visual Basic的結構-語法,Visual Basic結構是自定的資料型態(User-Defined Types),使用Structure/End Structure程式敘述來定義新型態,其語法如下所示: Structure 型態名稱 Public | Private | Dim 成員變數 End Structure 上述語法定義新資料型態,可以使用Public、Private或Dim關鍵字來宣告成員變數。其中

      7、Private宣告的成員變數只能在Structure/End Structure結構中使用。,13-3-1 Visual Basic的結構-結構範例,例如:儲存學生成績資料的結構Student,如下所示: Structure Student Public id As Integer Public name As String Public mathScore As Integer Public englishScore As Integer End Structure 上述結構的成員擁有學號id、學生姓名name、數學成績mathScore和英文成績englishScore。,13-3-1 Visual Basic的結構-宣告結構變數和指定值,因為Student是自訂的新型態,所以程式碼可以使用此新型態來宣告變數,如下所示: Dim std1 As Student 上述程式碼宣告結構變數std1後,就可以指定成員變數值,如下所示: std1.id = 1 std1.name = “陳會安“ std1.mathScore = 78 std1.englishScore = 65,13-3-

      8、2 隨機檔案的讀寫-結構宣告,在Visual Basic應用程式開啟隨機檔案前,我們需要先定義儲存資料的記錄結構,如下所示: Structure Student Public id As Integer Public name As String Public mathScore As Integer Public englishScore As Integer End Structure 結構宣告因為隨機檔儲存的記錄長度是相同大小,String型態是一種可變長度的資料型態,因此在變數宣告前,使用VBFixedString屬性指定字串是固定長度。,13-3-2 隨機檔案的讀寫-開啟隨機檔案,隨機檔案的開啟也是使用FileOpen()函數,檔案模式為OpenMode.Random,如下所示: FileOpen(fileNum, fileName, _ OpenMode.Random, , , recLength) 上述函數的最後1個參數是記錄長度,也就是前述結構的尺寸,可以使用Len()函數來取得其大小。,13-3-2 隨機檔案的讀寫-新增、更新和刪除記錄(相關函數),在開啟隨機檔案後,

      9、我們可以使用Visual Basic函數來讀取與寫入記錄資料,如下表所示:,13-3-2 隨機檔案的讀寫-新增、更新和刪除記錄(存取記錄),FilePut()和FileGet()函數可以分別在隨機檔案新增和取得記錄資料,如下所示: last += 1 FilePut(fileNum, std, last) 上述程式碼新增一筆記錄,last變數是最後一筆記錄的編號。筆者使用LOF()函數在Form1表單的Load事件處理程序計算檔案共有多少筆記錄,如下所示: FileOpen(1, fileName, OpenMode.Input) length = LOF(1) FileClose(1) last = length Len(std),13-3-2 隨機檔案的讀寫-新增、更新和刪除記錄(刪除記錄),刪除記錄是清除記錄資料,例如:將學號ID設為-1,不過,此筆記錄仍然儲存在檔案中,為了真正刪除記錄,即避免檔案有空記錄且節省檔案空間,完整記錄刪除的操作,如下所示: 建立新的隨機檔。 將不是空的記錄複製到新檔案中。 使用Kill()函數刪除原隨機檔。 使用Rename()函數將新檔更名成原隨機檔。,13-4 二進位檔案的讀寫-開啟,二進位檔案特別適用在可變長度資料的存取,例如:在第13-2-2節是一行一行的寫入與讀取文字檔案。如果改用二進位檔,可以一次讀取或寫入整個文字檔案的內容。 在Visual Basic程式開啟二進位檔案也是使用FileOpen()函數,模式是OpenMode.Binary,如下所示: FileOpen(1, fileName, OpenMode.Binary) 上述FileOpen()函數不需要開啟隨機檔時的記錄大小參數recLength。,13-4 二進位檔案的讀寫-讀寫,二進位檔案的讀取和寫入同樣是使用FileGet()和FilePut()函數。二進位和隨機檔案的差異,如下所示: FilePut()和FileGet()函數是連續從磁碟檔案寫入和讀取資料,在處理資料時,並不用指定記錄編號,如下所示: FilePut(1, txtOutput.Text) FileGet()和FilePut()函數在讀取和寫入可變長度字串時,例如:文字檔案,並不會處理雙位元組的中文字,而是將它視為2個字元,所以在讀取和寫入字串時,一個中文字視為2個字元。,1

      《visualbasic程式设计范例教本》由会员小**分享,可在线阅读,更多相关《visualbasic程式设计范例教本》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.