www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 測(cè)試測(cè)量 > 測(cè)試測(cè)量
[導(dǎo)讀]文本文件是由若干行字符構(gòu)成的計(jì)算機(jī)文件,根據(jù)本文存儲(chǔ)方式的不同有多種格式,如doc、txt、inf等。通常所指的文本文件是指能夠被系統(tǒng)終端或者簡單的文本編輯器中接受的格式,可以認(rèn)為這種文件是通用的、跨平臺(tái)的。對(duì)

文本文件是由若干行字符構(gòu)成的計(jì)算機(jī)文件,根據(jù)本文存儲(chǔ)方式的不同有多種格式,如doc、txt、inf等。通常所指的文本文件是指能夠被系統(tǒng)終端或者簡單的文本編輯器中接受的格式,可以認(rèn)為這種文件是通用的、跨平臺(tái)的。對(duì)通用的英文文本文件而言,ASCII碼是最為常見的編碼標(biāo)準(zhǔn);而如果需要存儲(chǔ)帶重音符號(hào)的英文或其它的非ASCII字符,則必須選擇一種字符編碼,如UTF-8。
盡管ASCII標(biāo)準(zhǔn)使得只含有ASCII字符的文本文件可以在Unix、Macintosh、Microsoft Windows、DOS和其它操作系統(tǒng)之間自由交互,但是在這些操作系統(tǒng)中,換行符并不相同,處理非ASCII字符的方式也不一致。換行(end-of-line, EOL)是一種加在文字字符最后位置的特殊字元,它可以確保后面的下一個(gè)字符能夠出現(xiàn)在下一行。ASCII編碼分別使用LF(Line Feed, 0Ah)或CR(Carriage Return, 0Dh)或CR+LF來表示換行(EOL),不同的操作系統(tǒng)處理EOL的方式如下:
LF:用于Unix或Unix相容系統(tǒng)(GNU/Linux, Mac OS X….),RISC OS;CR:Apple Ⅱ家族;CR+LF:Windows系統(tǒng),大部分非Unix操作系統(tǒng)。LabVIEW中的文本文件讀寫采用圖 1所示的兩個(gè)函數(shù)完成:“Write To Text File”和“Read From Text File”。這兩個(gè)函數(shù)是多態(tài)函數(shù),可以接受File Refnum和File Path兩種輸入。

圖 1 File I/O選板
本例將從一個(gè)數(shù)據(jù)讀寫的實(shí)例中介紹這兩個(gè)函數(shù)的使用。如圖 2所示,程序?qū)⒁粋€(gè)二維數(shù)組轉(zhuǎn)換為字符串后寫入到文本文件中,將會(huì)自動(dòng)生成該Test.xls文件(如果已經(jīng)存在該名稱的文件,將自動(dòng)覆蓋并不提示用戶)。盡管例子的后綴名使用xls(Microsoft Excel格式),但是實(shí)質(zhì)上是文本文件,使用各種文本編輯工具均可以打開(事實(shí)上也可以采用任何自定義格式的后綴名)。


圖 2 Write to Text File
如果需要將現(xiàn)有的數(shù)據(jù)添加到原有的文本文件中,應(yīng)該如何處理呢?如圖 3所示,打開文件后使用Set File Position將文件指針移動(dòng)到文件尾,再寫入數(shù)據(jù),并關(guān)閉文件。


圖 3 Write to Text File_Append
對(duì)比圖 2和圖 3,可以看出,盡管都使用了Write To Text File函數(shù),但是二者的輸入是不一樣的,前者使用路徑而后者使用Refnum。此外,前者只使用了一個(gè)函數(shù);而后者還加入了Close File函數(shù)。事實(shí)上,當(dāng)使用文件路徑(Path)直接連入(或者為空,此時(shí)將彈出路徑選擇對(duì)話框)到Write To Text File函數(shù)中時(shí),LabVIEW將在執(zhí)行完該函數(shù)時(shí)自動(dòng)文件;但是如果是使用文件句柄(Refnum)連入到該函數(shù)或者將函數(shù)的輸出句柄連接到了其它的函數(shù),則LabVIEW將認(rèn)為文件仍然在使用,并不自動(dòng)關(guān)閉。
右擊Write To Text File函數(shù),在彈出菜單中有一個(gè)“Convert EOL”菜單項(xiàng),默認(rèn)是選中的。當(dāng)勾選了該選項(xiàng)后,該函數(shù)將把所有基于操作系統(tǒng)的EOL字符(行結(jié)束符)轉(zhuǎn)換為LabVIEW EOL符。比如會(huì)將單獨(dú)的“”和“”轉(zhuǎn)換成“”行結(jié)束符。
圖 4顯示了從Test.xls中讀取數(shù)據(jù)的實(shí)例代碼,使用Read from Text File函數(shù)能夠?qū)⑽谋疚募械淖址x取,程序員可以對(duì)這些字符串進(jìn)行后續(xù)的處理,如圖中轉(zhuǎn)化為Double數(shù)組。事實(shí)上,Read from Text File也能夠接受路徑和文件句柄兩種輸入方式,當(dāng)需要只讀取文件的部分字節(jié)時(shí)就需要使用到句柄操作了。


圖 4 Read from Text File
Read from Text File函數(shù)有一個(gè)count輸入,表示從文本文件中讀取的字節(jié)數(shù)(byte),當(dāng)設(shè)置為-1時(shí)表示整個(gè)文本。此外,在函數(shù)的右鍵快捷菜單中選擇“Read Lines”將以行為單位(而不是字節(jié))讀取文本文件。Read from Text File函數(shù)同樣也提供了“Convert EOL”選項(xiàng),此時(shí)該函數(shù)將把所有基于平臺(tái)的行結(jié)束符轉(zhuǎn)換為換行符,如將“”和“”轉(zhuǎn)換為“”。
【注意】
從Read from Text File函數(shù)的count端子可知,該端子為一個(gè)I32型整數(shù)。當(dāng)將其它類型的整數(shù)連入到該端子時(shí),將自動(dòng)轉(zhuǎn)換為I32型整數(shù)。如果文件過大,超過了I32的表示范圍,需要分段讀取。
【討論】如何將一個(gè)文本文件的內(nèi)容清空,但是不要將該文件刪除呢?
這個(gè)問題似乎是程序員經(jīng)常遇到的,一個(gè)簡單的方式就是使用“Open/Create/Replace File”函數(shù),將operation參數(shù)設(shè)置為replace and create。但是如果在使用文件的過程中,如何將文件內(nèi)容清空呢?如圖 5所示。


圖 5 清空已寫入文件的文本
當(dāng)然可以先將該使用“Close File”函數(shù)關(guān)閉該文件,再使用“Open/Create/Replace File”函數(shù)新建該文件。此外,LabVIEW提供了一種字節(jié)控制的方式能夠迅速地清空文件中的內(nèi)容,如圖 6所示。


圖 6 使用Set File Size函數(shù)
毫無疑問,文本文件在數(shù)據(jù)存儲(chǔ)方面是非常重要的。通用、簡單和易用似乎是最大的優(yōu)勢(shì),這一點(diǎn)從上面的實(shí)例中就可以看出來。但是,從測(cè)試測(cè)量的數(shù)據(jù)存儲(chǔ)方面來說,它也有一些缺點(diǎn)。如讀寫速度比較慢慢,不適合于高速數(shù)據(jù)記錄;文件取址和檢索比較麻煩,無法實(shí)現(xiàn)快速定位;當(dāng)數(shù)據(jù)量太大時(shí),打開文本文件會(huì)非常慢。此外,文本文件無法存儲(chǔ)顏色、富文本、圖像和視頻等多媒體信息。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉