將多個文字檔案中的資料寫到SqlLite中

2021-06-26 15:44:59 字數 2015 閱讀 3450

檔案中資料的格式

2010_c0001        ㎏

2010_c0002        ㎏

2010_c0003        ㎏

2010_c0004        ㎏

2010_c0005        ㎏

2010_c0006        ㎏

2010_c0007        ㎏

2010_c0008        ㎏

2010_c0009        ㎏

2010_c0010        ㎏

...private

qsqldatabase

m_db;

需要將1

千萬條的如上示格式的資料寫入

sqllite

資料庫中,檔案中的資料格式是(定額庫

id_材料

id 單位),

資料檔案儲存在特定的目錄下,存在多個資料檔案,為

txt格式。我們需要將定額庫

id_材料

id與單位資料儲存在

資料表中,定額庫

id與對應的資料表表名儲存在索引表中。

bool

gcreatesqlitetable::createdb()

//將資料匯入資料表與索引表

createtable(file);

file.close();

qdebug()

<<

"write

success";}}

qdebug()

<<

"success--------------";

return

true;

}新建兩張表,一張索引表,欄位名是定額庫

id(例如

2010

)、新建的表名另一張表是具體

的資料表,包括定額庫

id_材料id(

2010_c0001

),單位(kg)

,首先需要確定新建的資料表

個數,而後

定額庫id %

資料表個數

將不同的定額庫

id資料匯入不同的資料表中。

void

gcreatesqlitetable::initdb()

qsqlquery

query(m_db);

//建立索引表

query.exec("create

table

unittableindex(id

text

primary

key,

tablename

text)");

for(int

i=0;i

}導資料進資料庫過程。注意檔案資料的讀取方式。

void

gcreatesqlitetable::createtable(qfile

&file)

qstring

lasttablename;

//開啟事務

m_db.transaction();

while

(!file.atend())}//

結束事務

m_db.commit();

}自動遞迴過濾檔案。

void

gcreatesqlitetable::addsubfolderfiles(qstringlist

&filelist,

qstring

&path,

qstring

&filter)

qstringlist

filters;

filters

<< filter;

qdiriterator

dir_iterator(path,filters,

qdir::files

|qdir::nosymlinks,

qdiriterator::subdirectories);

while

(dir_iterator.hasnext())

}

合併多個文字檔案方法

把多個文字檔案合併的小方法 如何快速合併多個文字 如txt 檔案呢?這個其實很簡單。實驗 建立多個txt文字檔案,如下 其中內容分別為 1 a2 b 3 c4 d 現要把這四個txt檔案合成為乙個 sql 檔案。合併後的效果如下 linux下面其實更為簡單,想想如果把乙個日誌檔案清空,我們一般會怎樣...

將文字檔案轉為html檔案

前言 借助指令碼把文字裡的資料轉為html資料,此時用到cat cloud here document用法 如 info.txt文字資料為 zhangsan shang hai lisi beijing wangwu tianjin txt2html.sh指令碼 為 bin bash cat clo...

python 將位元組寫入文字檔案

想在文字模式開啟的檔案中寫入原始的位元組資料 將位元組資料直接寫入檔案的緩衝區即可 import sys sys.stdout.write b hello n traceback most recent call last file line 1,in typeerror must be str,n...