C 實現把txt文字資料快速讀取到excel中

2022-10-06 21:24:20 字數 1959 閱讀 2864

今天預實現一功能,將txt中的資料轉到excel表中,做為matlab的資料來源。蒐集一些c#操作excel的程式。步驟如下:

**乙個microsoft.office.interop.excel.dll   在專案中引用。

編寫**如下:

string path = "c://date";

streamreader sr = new streamreader(path);

string strline = sr.readline();

int rownum = 1;

object missing = system.reflection.missing.value;

applicationclass app = new applicationclass();

app.application.workbooks.add(true);

workbook book = (workbook)app.activeworkbook;

worksheet sheet = (worksheet)book.activesheet;

while (!string.isnullorempty(strline))

strline = sr.readline();

rownum++;

}//儲存excel檔案

book.s**ecopyas("d:");

//關閉檔案

book.close(false, missing, missing);

//退出excel

app.quit();

messagebox.show("轉化成功!");

以上**可以實現功能,由於txt中的資料有60501行,資料量太大。我估算了一下,用以上**轉到excel要用大約2-3分鐘。我一共要轉9個txt。一共要用20多分鐘。這樣作出系統顯然是讓人難以忍受的。接著找資料,發現用rang方法可以提高速率。只用大約3-4秒鐘的時間,提高效率幾十倍。**如下:

string path = "c://date";

streamreader sr = new streamreader(path);

string strline = sr.readline();

int rownum = 1;

object missing = system.reflection.missing.value;

applicationclass app = new applicationclass();

app.application.workbooks.add(true);

workbook book = (workbook)app.activeworkbook;

worksheet sheet = (worksheet)book.activesheet;

range r = sheet.get_range("a1", "c1");

//獲取行數

object[,] objectdata = new object[65535, 3];

while (!string.isnulloremwww.cppcns.compty(strline))

strline = sr.readline();

rownum++;

}r = r.get_resize(65535, 3);

r.value2 = objectdata;

r.entirecolumn.autofit();

//儲存excel檔案

book.s**ecopyas("d:");

//關閉檔案

book.close(false, missing, missing);

//退出excel

app.quit();

messagebox.show("轉化成功!");

本文標題: c#實現把txt文字資料快速讀取到excel中

本文位址: /ruanjian/csharp/125872.html

C 分塊讀取文字資料(FileStream)

針對文字內容很大的時候,分塊來處理資料。直接上 using system.io using system.text static void readstreamfromfile while tempcount readcount catch finally 其中 stream.read buffer...

python實現txt文字資料分類 中英文分類

最近在做自然語言處理的資料預處理部分 實體詞,提取 抓取的資料集中包含中英文,那麼我們只需要英文,不需要中文,於是就寫了乙個簡單的指令碼實現txt文字資料分類。原資料如下 為了寫這篇部落格特意只提取了資料的一部分 如下 file open open r c users administrator d...

使用matlab和c 讀取文字資料混合文件

由於從事訊號處理領域,所以會有處理大量資料的需要,但經常資料中還混合有字元表徵資料型別或引數名稱。這種情況下就需要在混合字元數字中篩選出程式所需要的資料。筆者目前常用的程式語言是matlab和c 現在分別給出兩種語言的實現方法。由於工程需要,把這兩個功能封裝成了函式。function output ...