[問題] StreamReader與Backgroundworker

看板C_Sharp作者 (溺於黑暗)時間16年前 (2010/02/09 17:46), 編輯推噓3(305)
留言8則, 6人參與, 最新討論串1/1
不好意思請問一個.net元件的問題. 我有一個龐大內容的文字檔,想要把內容讀入到一個Textbox或Richtextbox. 如果使用StreamReader的ReadToEnd(),會讀很久, 甚至在Backgroundworker中都會卡住整個程式. 如果是使用ReadLine()的話,雖然程式不會卡住, 但是因為行數相當的多,所以會讀"很久"才讀得完. 我希望作到使用者知道程式正在讀取資料,(資料大小大約是幾Mb的txt檔案) 但是又不會把程式卡死. 又在合理的時間可以讀完. 不知道各位有什麼建議. -- "May the Balance be with U"(願平衡與你同在) 視窗介面遊戲設計教學( http://0rz.tw/V28It ),討論,分享。歡迎來信。 視窗程式設計(Windows CLR Form)遊戲架構設計(Game Application Framework) 遊戲工具設計(Game App. Tool Design ) 電腦圖學架構及研究(Computer Graphics)論文代讀(含投影片製作) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.96.77.176

02/09 17:50, , 1F
你只需要在使用者"需要"那段文字時再readline...
02/09 17:50, 1F

02/09 17:51, , 2F
多執行緒?
02/09 17:51, 2F

02/09 20:11, , 3F
Backgroundworker 應該就是另外一個 thread 了吧@@?
02/09 20:11, 3F

02/09 21:05, , 4F
利用Backgroundworker + ReadLine + StringBuilder
02/09 21:05, 4F

02/10 09:21, , 5F
我會試看看StringBuilder,有進展再回報,thx
02/10 09:21, 5F

02/10 10:00, , 6F
我記得Backgroundworker跟多執行緒差很多喔
02/10 10:00, 6F

02/11 06:50, , 7F
我的認知跟這篇差不多 http://goo.gl/mC33 不知道差很多的
02/11 06:50, 7F

02/11 06:50, , 8F
意思是差在哪@@? 願聞其詳
02/11 06:50, 8F
文章代碼(AID): #1BSIy334 (C_Sharp)