今天先來談?wù)凞atalog文件,這種文件格式也有點年代了?;旧峡梢哉J為這種文件格式是二進制的。準確的講,如果仔細研究,可以發(fā)現(xiàn)這種文件的內(nèi)部結(jié)構(gòu)比較奇怪。舉個例子:如果往這個文件中存儲3個int32的數(shù)字,用二進制的文本編輯器打開,可以看到內(nèi)容類似于:![](http://byfiles.storage.msn.com/y1pTA2hF2AsymCQR6iYOUVGdSvRJ8_0PdN6f__O7w3j2So9SchZkZkEquMC1xSoDP1eFNUH5aNN7GI?PARTNER=WRITER)
本文引用地址:http://m.butianyuan.cn/article/201701/337023.htm這個還比較還理解,前面是一些頭文件,后面是1、2、3三個數(shù)字。但是如果寫入a、b、c三個字符,情況就比較復(fù)雜了:
![](http://byfiles.storage.msn.com/y1pTA2hF2AsymCX4t2dMo9l6_CY-fknVVGJK-w8ZhwCVTveRflZlSmjwDxd3OlK9QWqMyiCd6NRHr0?PARTNER=WRITER)
中間再省略若干行0。。。到文件的最后是:
![](http://byfiles.storage.msn.com/y1pTA2hF2AsymAEwf0owiZ7ZQoUFzRg0CtPhRg0TE-qMW3_7qO7k8yJqYVE6HyRo9CYQ1VbqAlpjQU?PARTNER=WRITER)
由此可見,該文件格式對于不同的數(shù)據(jù)類型、不同的存儲方法有不同的內(nèi)部結(jié)構(gòu)。我個人看來,對于后一種結(jié)構(gòu),還是有不少的冗余信息的。這種文件使用起來也不是太復(fù)雜,有一整套的API可以調(diào)用,具體的使用方法可以參考幫助文檔。
![](http://byfiles.storage.msn.com/y1pTA2hF2AsymBj03egUA4Fd2RanAMjVJp4e2We-YaSGqXmRIrNSir0RgYzfiPkm4S9uKpT0pk-mUQ?PARTNER=WRITER)
總體來講,這種文件格式,性能、使用的建議度、可讀性均在中等水平,僅適用于LabVIEW軟件。對于性能有一點要求,但要求不是很高的用戶來說,可以采用該文件格式。
再介紹一種文件格式,在LabVIEW中就叫做“二進制文件(binary file)”,其實很多文件格式都是二進制的,包括剛才介紹的Datalog,以及以后要介紹的TDMS。為了區(qū)別于其他二進制文件,我們有時候叫這種二進制文件為“bytestream”。具體操作這種文件格式的API非常簡單。
![](http://byfiles.storage.msn.com/y1pTA2hF2AsymDhGVtspOyOhiTAJ2b60qJ2UWf_7veiNusmnNZmJMRXO7mZxIEJohsI4xFKh8gFGUM?PARTNER=WRITER)
這種文件格式的性能非常高,使用起來也非常方便(就兩個VI,一個負責(zé)寫,一個負責(zé)讀),但是數(shù)據(jù)的組織,也就是內(nèi)部數(shù)據(jù)的結(jié)構(gòu)(在這里無法透露具體的內(nèi)部結(jié)構(gòu)),可以說是比較差的。如果用戶對于寫入文件的性能要求比較高,但是并沒有太多后續(xù)維護、管理數(shù)據(jù)的需求,可以考慮采用這種文件格式。
評論