第六章字符串和文件存取_第1頁
第六章字符串和文件存取_第2頁
第六章字符串和文件存取_第3頁
第六章字符串和文件存取_第4頁
第六章字符串和文件存取_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第第6章章 字符串和文件字符串和文件存取存取第6講學(xué)習(xí)目標(biāo) 1學(xué)習(xí)學(xué)習(xí)字符串字符串控件的創(chuàng)建與操作控件的創(chuàng)建與操作2使用使用字符串函數(shù)字符串函數(shù)3執(zhí)行文件輸入和輸出操作執(zhí)行文件輸入和輸出操作4將數(shù)據(jù)以將數(shù)據(jù)以電子電子表格格式表格格式寫入寫入文件文件與讀出與讀出5從從文本文本文件中讀文件中讀/寫寫字符串字符串。6. 讀寫數(shù)據(jù)記錄文件讀寫數(shù)據(jù)記錄文件7將波形數(shù)據(jù)寫入文件將波形數(shù)據(jù)寫入文件6.16.1 字符串字符串 6.1.1 6.1.1 創(chuàng)建字符串控制器和指示器創(chuàng)建字符串控制器和指示器 6.1.2 6.1.2 字符串控件的菜單選項(xiàng)字符串控件的菜單選項(xiàng) 6.1.3 6.1.3 字符串函數(shù)字符串函數(shù)6

2、.1.1 6.1.1 創(chuàng)建字符串控制器和指示器創(chuàng)建字符串控制器和指示器圖圖6.1 字符串控件的選取字符串控件的選取與操作與操作6.1.2 6.1.2 字符串控件的菜單選項(xiàng)字符串控件的菜單選項(xiàng)1.1.顯示模式顯示模式: 2 2滾動(dòng)條滾動(dòng)條 ( ( Scrollbar )Scrollbar )Update Value While Typing Update Value While Typing 選項(xiàng)選項(xiàng)在程序運(yùn)行過程中,字符串顯示器的在程序運(yùn)行過程中,字符串顯示器的內(nèi)容將會(huì)隨著字符的輸入而內(nèi)容將會(huì)隨著字符的輸入而改變,無需用戶按動(dòng)鍵盤上的回車按鈕或工具欄的確認(rèn)按鈕進(jìn)行改變,無需用戶按動(dòng)鍵盤上的回車

3、按鈕或工具欄的確認(rèn)按鈕進(jìn)行輸入確認(rèn)。輸入確認(rèn)。 6.1.3 6.1.3 字符串函數(shù)字符串函數(shù) 字符串函數(shù)子模板字符串函數(shù)子模板常用字符串函數(shù)常用字符串函數(shù)1. String Length (1. String Length (字符串長度字符串長度) )函數(shù):函數(shù):2. Concatenate String (2. Concatenate String (連接字符串連接字符串) ) 函數(shù)函數(shù) 3. String Subset( 3. String Subset( 從字符串提取子串從字符串提取子串) )函數(shù)函數(shù)4 4Match Pattern (Match Pattern (查找匹配字串查找匹配字

4、串) )函數(shù)函數(shù) 5 5Format Into String (Format Into String (格式化字符串格式化字符串) )函數(shù)函數(shù) 6 6Scan From String (Scan From String (掃描字符串?dāng)?shù)字字符掃描字符串?dāng)?shù)字字符) )函數(shù)函數(shù)字符串函數(shù)應(yīng)用舉例字符串函數(shù)應(yīng)用舉例例例6.1.1 Match Pattern 6.1.1 Match Pattern 函數(shù)的使用。函數(shù)的使用。例例6.1.2 6.1.2 使用格式字符串。使用格式字符串。 注意:不允許有空參數(shù)輸入端注意:不允許有空參數(shù)輸入端Edit Format String Edit Format Stri

5、ng 對(duì)話框?qū)υ捒蚶?.1.3 Scan From String 6.1.3 Scan From String 函數(shù)使用示例。函數(shù)使用示例。6.2 6.2 文件存取文件存取 文件文件操作三個(gè)基本步驟操作三個(gè)基本步驟 : : 打開現(xiàn)存文件或創(chuàng)建一個(gè)新文件打開現(xiàn)存文件或創(chuàng)建一個(gè)新文件 寫入或讀取文件寫入或讀取文件 關(guān)閉文件關(guān)閉文件LabVIEWLabVIEW支持的文件類型支持的文件類型(4 4種)種) ASCII ASCII 碼碼流文件(文本文件)流文件(文本文件) 二二進(jìn)制進(jìn)制流文件流文件 數(shù)據(jù)記錄文件數(shù)據(jù)記錄文件 波形數(shù)據(jù)文件波形數(shù)據(jù)文件6.2.1 6.2.1 文件文件 I/O I/O 子模

6、板子模板簡介簡介6.2.2 6.2.2 高層文件高層文件操作操作VI VI 及應(yīng)用及應(yīng)用v文件格式:文件格式:電子表格讀寫電子表格讀寫/ /直接讀寫字符串直接讀寫字符串/ /二進(jìn)制文件二進(jìn)制文件讀寫讀寫 v什么是什么是電子表格文件電子表格文件? 是一種特殊的文本文件,一般用是一種特殊的文本文件,一般用TabTab( (制表制表) )鍵鍵分割列分割列,用用 EOLEOL(end-of-line) (end-of-line) 行結(jié)束符行結(jié)束符分割行分割行,可在電子表格文,可在電子表格文件中(如件中(如ExcelExcel)打開)打開的文件。的文件。 1. Write To Spreadsheet

7、File VI Write To Spreadsheet File VI (寫電子表格文件)(寫電子表格文件)節(jié)點(diǎn)功能節(jié)點(diǎn)功能: : 是是將單精度將單精度(SGL)(SGL)浮點(diǎn)型浮點(diǎn)型一維或二維數(shù)組轉(zhuǎn)換為一維或二維數(shù)組轉(zhuǎn)換為電子電子表格表格字符串字符串, , 并將其寫入一個(gè)新的文件或添加到現(xiàn)存文并將其寫入一個(gè)新的文件或添加到現(xiàn)存文件中件中,寫入之后自動(dòng)關(guān)閉文件,寫入之后自動(dòng)關(guān)閉文件。例例6.2.16.2.1: 使用使用 WriteWrite To Spreadsheet File To Spreadsheet File 節(jié)點(diǎn)構(gòu)建一節(jié)點(diǎn)構(gòu)建一VIVI 將一個(gè)浮點(diǎn)型二維數(shù)組寫入電子表格文件。將一

8、個(gè)浮點(diǎn)型二維數(shù)組寫入電子表格文件。 注意:注意:必須保證電子表格文件的所有字符串全部由有效的數(shù)必須保證電子表格文件的所有字符串全部由有效的數(shù) 值字符值字符組成組成例例6.2.2 6.2.2 將含有將含有1010個(gè)隨機(jī)數(shù)的一維數(shù)組寫入電子表格文件。個(gè)隨機(jī)數(shù)的一維數(shù)組寫入電子表格文件。2.Read From Spreadsheet File VI2.Read From Spreadsheet File VI(讀電子表格文件)(讀電子表格文件)該該 VI VI 節(jié)點(diǎn)打開一個(gè)電子表格文件,節(jié)點(diǎn)打開一個(gè)電子表格文件,從數(shù)字文本文件中從數(shù)字文本文件中指定的字符偏移量開始,讀取指定行數(shù)指定的字符偏移量開始,

9、讀取指定行數(shù)的數(shù)據(jù),的數(shù)據(jù),并將這并將這些數(shù)據(jù)轉(zhuǎn)換些數(shù)據(jù)轉(zhuǎn)換成一個(gè)成一個(gè)二維的單精度二維的單精度數(shù)字型數(shù)字型數(shù)組數(shù)組,讀完后關(guān),讀完后關(guān)閉文件。閉文件。. . Write Characters to FileWrite Characters to File (寫字符串文件)(寫字符串文件)該該 VI VI 可以把一個(gè)字符串寫入一個(gè)新文件或添加到一個(gè)可以把一個(gè)字符串寫入一個(gè)新文件或添加到一個(gè)已存在已存在的文件中。在寫入文件之的文件中。在寫入文件之前,打開或創(chuàng)建文件;寫入之后,關(guān)閉前,打開或創(chuàng)建文件;寫入之后,關(guān)閉該文件該文件。. Read Characters From File. Read C

10、haracters From File(讀取字符串文件)(讀取字符串文件)該該節(jié)點(diǎn)節(jié)點(diǎn)可以可以打開一個(gè)文件,打開一個(gè)文件,從指定的字符偏移量開始從指定的字符偏移量開始,讀取,讀取指定指定數(shù)目的字?jǐn)?shù)目的字符,讀完后符,讀完后輸出字符串。輸出字符串。例例 6 6.2.2.:將溫度采樣值轉(zhuǎn)換為以將溫度采樣值轉(zhuǎn)換為以“,”,”分隔的格式化字符分隔的格式化字符串,寫入文本文件中。串,寫入文本文件中。(演示:(演示:寫字符串文件寫字符串文件VI)VI) 6.2.3 6.2.3 低層文件操作函數(shù)及應(yīng)用低層文件操作函數(shù)及應(yīng)用基本文件操作包括基本文件操作包括: :對(duì)文件進(jìn)行打開、新建、讀、寫、關(guān)閉文件等對(duì)文件進(jìn)

11、行打開、新建、讀、寫、關(guān)閉文件等。1 1Open/Create/Replace File VI(Open/Create/Replace File VI(打開創(chuàng)建覆蓋文件打開創(chuàng)建覆蓋文件) ) 參數(shù)值function(open:0)端子參數(shù)含義打開一個(gè)已存在的文件,如果文件不存在返回一個(gè)錯(cuò)誤代碼打開一個(gè)文件,若不存在則創(chuàng)建一個(gè)新文件創(chuàng)建一個(gè)新文件或覆蓋一個(gè)已存在文件創(chuàng)建一個(gè)新文件,若與其它文件同名則返回一個(gè)錯(cuò)誤代碼.Write File.Write File( (寫文件寫文件)該節(jié)點(diǎn)向文件標(biāo)識(shí)符該節(jié)點(diǎn)向文件標(biāo)識(shí)符 refnum refnum 指定的文件中寫入數(shù)據(jù)(文本字符),寫入字符指定的文件中

12、寫入數(shù)據(jù)(文本字符),寫入字符的起始位置由的起始位置由pos mode pos mode 和和 posposoftset oftset 端口端口參數(shù)參數(shù)指定指定。例例6.2.6 6.2.6 將前面將前面 例例6.2.2 6.2.2 的任務(wù)使用低級(jí)模塊的任務(wù)使用低級(jí)模塊 Write File VIWrite File VI實(shí)現(xiàn)。實(shí)現(xiàn)。3.Read File3.Read File ( (讀文件讀文件) ) 該該節(jié)點(diǎn)節(jié)點(diǎn)從從文件標(biāo)識(shí)符文件標(biāo)識(shí)符 refnum refnum 指定的文件中讀取數(shù)據(jù)指定的文件中讀取數(shù)據(jù) ( ( 文本字文本字符符 ) ),count count 端口指定讀取的字節(jié)數(shù)端口指定

13、讀取的字節(jié)數(shù),pos mode pos mode 和和 pospos oftset oftset 端口指定讀取字符的起始位置,讀取的字符串端口指定讀取字符的起始位置,讀取的字符串由由datadata 端口端口返回返回。例例6.2.5 6.2.5 從文件中讀取數(shù)據(jù)。從文件中讀取數(shù)據(jù)。 6.2.4 6.2.4 數(shù)據(jù)記錄文件數(shù)據(jù)記錄文件I/OI/O 數(shù)據(jù)記錄文件類似于數(shù)據(jù)庫文件數(shù)據(jù)記錄文件類似于數(shù)據(jù)庫文件,按,按數(shù)據(jù)記錄順序存儲(chǔ)數(shù)據(jù)數(shù)據(jù)記錄順序存儲(chǔ)數(shù)據(jù)。每個(gè)記錄可以是任意類型數(shù)據(jù)的組合每個(gè)記錄可以是任意類型數(shù)據(jù)的組合, , 但所有但所有記錄都必須是同一記錄都必須是同一類型類型數(shù)據(jù)數(shù)據(jù)。 6.2.5

14、6.2.5 波形文件波形文件I/OI/O波形文件實(shí)際上是一種波形文件實(shí)際上是一種特殊特殊數(shù)據(jù)記錄數(shù)據(jù)記錄類型類型文件文件,在,在每個(gè)記錄中可每個(gè)記錄中可以以包含一個(gè)包含一個(gè)或多個(gè)波形的數(shù)據(jù)。一個(gè)波形或多個(gè)波形的數(shù)據(jù)。一個(gè)波形數(shù)據(jù)數(shù)據(jù)包括采樣開始時(shí)間包括采樣開始時(shí)間t, t, 采樣間隔采樣間隔 t t 和采樣數(shù)據(jù)和采樣數(shù)據(jù) y( y( 單精度數(shù)組單精度數(shù)組) )三部分信息。三部分信息。 例例 6.2.8 6.2.8 寫波形文件寫波形文件。例例 6.2.8 6.2.8 讀讀波形文件波形文件數(shù)據(jù)。數(shù)據(jù)。目標(biāo)目標(biāo): : 使用使用Read wavefomRead wavefom from File fr

15、om File節(jié)點(diǎn)從上例創(chuàng)建的節(jié)點(diǎn)從上例創(chuàng)建的waveformwaveform data data文件中讀取波形數(shù)據(jù),并將波形數(shù)據(jù)文件中讀取波形數(shù)據(jù),并將波形數(shù)據(jù)顯示在前面板上顯示在前面板上。6.2.6 6.2.6 使用文件使用文件I/OI/O功能函數(shù)的幾點(diǎn)說明功能函數(shù)的幾點(diǎn)說明1. 1. 指定文件指定文件G G 語言提供了兩種指定文件的方法:在編程中指定或者通過對(duì)話框語言提供了兩種指定文件的方法:在編程中指定或者通過對(duì)話框指定指定。前者需要給前者需要給 VI VI 提供文件名和路徑名。提供文件名和路徑名。. . 路徑和標(biāo)識(shí)符(路徑和標(biāo)識(shí)符(Path and RefnumsPath and R

16、efnums)路徑路徑是一種是一種用于識(shí)別文件的用于識(shí)別文件的 G G 數(shù)據(jù)類型數(shù)據(jù)類型。RefnumsRefnums是由是由識(shí)別一個(gè)打開文件的識(shí)別一個(gè)打開文件的 G G 數(shù)據(jù)數(shù)據(jù)類型類型構(gòu)成構(gòu)成, , 當(dāng)打開某個(gè)文件時(shí)當(dāng)打開某個(gè)文件時(shí), G G 會(huì)自動(dòng)返回一個(gè)與這個(gè)文件會(huì)自動(dòng)返回一個(gè)與這個(gè)文件類型類型相關(guān)聯(lián)的標(biāo)識(shí)相關(guān)聯(lián)的標(biāo)識(shí)。 對(duì)打開文件的所有對(duì)打開文件的所有操作都是操作都是基于基于這個(gè)文件標(biāo)識(shí)這個(gè)文件標(biāo)識(shí)來識(shí)別來識(shí)別每一個(gè)每一個(gè)文件的。標(biāo)識(shí)只在文件打開時(shí)文件的。標(biāo)識(shí)只在文件打開時(shí)生效。一旦文件關(guān)閉生效。一旦文件關(guān)閉,G G 語言就將取消標(biāo)識(shí)和文件之間的關(guān)聯(lián)。語言就將取消標(biāo)識(shí)和文件之間的關(guān)聯(lián)

17、。假如假如該該文件再次打開時(shí),新的標(biāo)識(shí)可能與原有標(biāo)識(shí)不同。文件再次打開時(shí),新的標(biāo)識(shí)可能與原有標(biāo)識(shí)不同。6.3 編程練習(xí)編程練習(xí) 6.3.1 6.3.1 字符串編程練習(xí)字符串編程練習(xí)練習(xí)目的:使練習(xí)目的:使用用 Format Into stringFormat Into string、MaMatchtch pattern pattern 和和 String String length length 等函數(shù)設(shè)計(jì)一個(gè)子等函數(shù)設(shè)計(jì)一個(gè)子VI, VI, 將一個(gè)將一個(gè)輸入輸入數(shù)字轉(zhuǎn)換成數(shù)字轉(zhuǎn)換成顯示顯示 2 2 位小數(shù)位小數(shù)的格式的格式字符串,并將字符串,并將整合整合字符串字符串及其及其長度長度在前面板在

18、前面板輸出。輸出。同時(shí),在前面同時(shí),在前面板輸入密碼,檢測輸入板輸入密碼,檢測輸入密碼密碼與設(shè)定密碼是否匹配與設(shè)定密碼是否匹配。 6.3.2 6.3.2 文件操作編程練習(xí)文件操作編程練習(xí)練習(xí)練習(xí)2 : 2 : 創(chuàng)建頭文件,向文件添加采樣數(shù)據(jù)。創(chuàng)建頭文件,向文件添加采樣數(shù)據(jù)。練習(xí)目的:創(chuàng)建一個(gè)練習(xí)目的:創(chuàng)建一個(gè)VIVI,產(chǎn)生頭文件,使用,產(chǎn)生頭文件,使用 For For 循環(huán)定時(shí)采循環(huán)定時(shí)采集溫度值,并將每次采樣時(shí)間及溫度值以集溫度值,并將每次采樣時(shí)間及溫度值以ASCIIASCII格式添加到文格式添加到文件中。件中。 (練習(xí)練習(xí)6-3-2-2.6-3-2-2.vivi )練習(xí)練習(xí)6-3-2-2.6-3-2-2.vivi 小結(jié)1 1字符串是字符串是 ASCII ASCII 字符的集合字符的集合, , 字符串控制器和指示器在控制模板的字

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論