C 讀取CSV檔案中的資料到Mat

2021-10-21 16:40:45 字數 2331 閱讀 9675

將讀取csv檔案的函式和當前正在讀取的檔案操作符等放在乙個類中,構造類似控制代碼的乙個類,代表乙個幀的檔案。

類中包含如開啟、關閉、檢查列數、(沒有寫檢查行數的函式)、科學計數法轉浮點數等基本操作。

mat類引用傳參。

//read_csv.h

#ifndef read_csv_h

#define read_csv_h

#include

#include

#include

#include

#include

//istringstream 必須包含這個標頭檔案

#include

using

namespace std;

using

namespace cv;

class

csv;

double

sci2db

(string& strsci)

;#endif

// !read_csv_h

filename_base 是基礎檔名,在上位機匯出時設定,後面跟著上位機自動補全的第幾幀。

blank_rows是無效的行數,上位機會生成幾行記錄相關資訊。

#include

"read_csv.h"

/*每一幀是乙個檔案

*/csv::

csv(

int b,

int r=

240)

//建構函式

csv::

~csv()

//析構函式

void csv::

check_columns

(void

)getline

(this

->infile, tmp)

;//--讀取一行

this

->columns =1;

for(

int i =

0; i < tmp.

size()

; i++

) cout <<

"there exists "

<<

this

->columns <<

" columns in the file "

<< endl;

file_close()

;//關閉檔案

}void csv::

read_csv

(int n,mat& dest)

}file_close()

;//關閉檔案

}void csv::

open_csv

(int idx)

void csv::

file_close

(void

)double

sci2db

(string& strsci)

strmntsa = strsci.

substr(0

, strsci.

find

("e"))

; strpower = strsci.

substr

(strsci.

find

("e")+

1); dmntsa =

atof

(strmntsa.

c_str()

);ipower =

atoi

(strpower.

c_str()

);while

(ipower !=0)

else

}return dmntsa * dcoefficient;

}/*temp

void csv::write_csv(void)

void csv::creat_new_csv(void)

void csv::open_csv(void)

*/

簡單寫乙個讀取每一幀吧

#include

#include

"read_csv.h"

using

namespace cv;

using

namespace std;

int start_frame =

1000

, end_frame =

6000

;//起始幀和終點幀

intmain()

//···

//system("pause ");

return0;

}

C 讀取CSV檔案中的資料

csv檔案是一種文字檔案,表示的是excel 資料,可以由辦公軟體excel輕鬆生成。為了在程式中使用excel資料,就需要以文字的形式操作excel資料,具體就是操作csv 資料。如下所示,include include include include include using namespac...

c 讀取csv到陣列 python讀取csv檔案

python讀取csv檔案 csv檔案,用記事本編輯,然後命名為test1.csv 1,2,3,4 5,6,7,8 9,10,11,12 用excel開啟,就是這樣的 使用python讀取檔案 按行讀取。然後把讀到的東西賦值給python程式中的變數。這個變數,可以是乙個列表 在這裡,是乙個2維的列...

c 讀取csv檔案

目前任務需要處理大量excel 為便於處理轉化為csv格式。csv是一種以半形逗號和換行符作為分割的excl 格式,用記事本直接開啟便很清楚的看到內部構造。之前曾經用c 處理,比較方便,直接將csv讀取為datatable格式進行處理,網上有現成 竊以為應該多練練c 就試一下。菜鳥乙個,只作為記錄 ...