LabVIEW儲存dat文件,Matlab讀取


LuoBeiCe 記錄自學LabVIEW遇到的各種問題

問題:在LabVIEW中將一個二維數組保存至dat文件,然后在matlab里面讀取。

一:LabVIEW保存數組至dat文件

描述:上半部分產生一個10X10的隨機二維數組。

“打開文件”函數的輸入參數有三個。分別為:1.文件保存路徑。2.“creat”:創建新文件,如果文件已存在,則報錯。3.“write-only”,只對文件進行寫的操作。

"寫入二進制文件"函數輸入參數有:1.要保存的二維數組。2.文件保存路徑。3.錯誤簇。4.“little-endian"。這個參數最好選擇這個,不要使用默認的參數。

”關閉文件“函數。

運行程序,前面板顯示如下:

而且對應文件夾里也多了一個”測試5,dat“的文件。

 

二:接下來使用Matlab讀取這個文件。

Matlab的代碼如下:

描述:”fopen":打開dat文件。

L,H:是我事先存好的二維數組的大小。

“fread”:讀取dat文件里面的數據。注意:前面我提到LabVIEW寫入二進制文件其中一個輸入參數為“little-endian”,就是因為

              Matlab讀取二進制文件默認采取的就是“little-endian"模式,這個方面兩者一定要配合好,否則可能會有問題。因為二維數

             組是double類型,所以這里也要指明。

B = A(2:(L*H+1)):這個地方很重要。Matlab讀取的結果會比存的數組多一位(4.12前來解釋,這是因為LabVIEW保存二進制文件時

            會專門保存數組的大小信息),並排成一列。比如我之前存的為10X10的二維數組。

            Matlab讀出來就是101X1個,多出來第一位為0。因此我們需要取第二位及后面的。

”reshape“:把讀出來的數據重新排序。最終的數組就儲存在變量C里面。

運行結果如圖:

任務就完成了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM