Re: [問題] 這樣的需求得要自己寫程式嗎?
※ 引述《buniro (期待2008!)》之銘言:
: 有一個2MB多的Unicode純文字檔,當中有很多重覆的字串"1"、"2"、"3"..."200",
: 如果想將"85"之後的字串其數值都+1,也就是處理後"1"~"84"不變,"85"變"86"、
: "86"變"87"...."200"變"201",那麼這有什麼現成的Editor可以使用嗎?還是非得
: 自己寫個程式來處理?如果只能自己寫的話,各位板友建議用哪一種語言寫,對
: 初學者來說比較容易?處理速度又以哪一種語言最快呢?還是速度都差不多?
: 謝謝大家的指導!
直接回一篇好了= =
2MB的資料一下子就跑完了
根本不用太在意效能
像這種 只用一次 的程式
當然是以開發速度為重點
如果說 用完一次就丟了,結果你花了三天開發
又不是只用一次完美版本= ="
效能再快,就算再爛的電腦 三天要不跑完這些資料也很困難
至於什麼語言最快呢?
我個人認為沒有什麼是最快最慢
就以Python而言(或Lua),很吃重的部份可以用C語言寫再引入
所以就算語言本身很慢,但是會寫的人一樣可以很寫出很有效的程式
爛的程式,就算用組合語言 C / C++寫,也未必會比Python VB之類的程式快
因為他們不懂整個程式的瓶頸到底會出現在哪裡
而大部份的時間都是卡在瓶頸上面的
最常見的情況,就是像這種存取硬碟,目前整台電腦最慢的,就是那個該死的硬碟
雖然他的空間越來越大,但是速度一樣還是很慢
因此,這類程式的效能就會卡在I/O的部份
程式真正在運算和處理其實差不了多少,除非真的是非常龐大的資料
積少成多,在會明顯地反應在執行時間上
否則,如果程式寫不好,大部份的時間就會浪費在等硬碟上面
我有看過有人寫處理大量批次檔的程式
結果要跑超久,原因就出在於大量的I/O在拖累
我記得他似乎不停的讀取和不停的寫入
I/O不只是硬碟慢,連Print在Console上都超慢的
不信可以寫兩個迴圈,一個有Print,一個沒有
就知道速度差多少
我們能做的,就是將I/O做最大的利用
一次讀入一筆資料,再來做處理
或是累積一定量的資料,再一口氣寫入
如果可以的話,寫程multithread,一個thread負責讀寫資料
一個thread負責處理,這樣會更快些
阿= ="
不過只是 "只用一次" 的程式
其實隨便寫都可以啦 XD
--
VICTOR工作室 | PTT遊戲設計版隆重開幕!
| 不管是新手老手,程式美工音樂企劃....
URL : http://www.kinmen.info/vic/ | 都歡迎來遊戲設計版參與討論 XD
| 戰略高手>
C/C++ | GameTopics>
Visual Basic 6.0 | GameDesign
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.231.215.68
推
09/26 20:18, , 1F
09/26 20:18, 1F
→
09/26 20:19, , 2F
09/26 20:19, 2F
→
09/26 20:19, , 3F
09/26 20:19, 3F
→
09/26 20:20, , 4F
09/26 20:20, 4F
推
09/26 22:54, , 5F
09/26 22:54, 5F
→
09/26 23:11, , 6F
09/26 23:11, 6F
→
09/26 23:12, , 7F
09/26 23:12, 7F
→
09/26 23:12, , 8F
09/26 23:12, 8F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 17 篇):