作者mintle (米頭)
站內java
標題[問題] 多執行緒讀TXT的問題
時間Sun Jul 27 11:21:17 2008
我有一個txt檔,裡面放了很多網址
可以用BufferedReader的readLine去讀取
假設我有很多執行緒都需要讀同一個文件檔去下載檔案
所以我想把讀擋這件事情獨立出來
所以我把它寫在另一個類別
package download2;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Read {
static public String readfile(String s) throws IOException{
BufferedReader br = new BufferedReader(new FileReader(s));
String s2=br.readLine();
return s2;
}
}
傳入值s是執行緒呼叫時填入的
可是每個執行緒去取的時候都只會取到文件檔的第一條網址
如果想讓上面程式具有
每個執行序取一次,readLine就往下一行取
避免取到同一條網址
應該如何修正呢~??
還有個小問題
如果用URL去抓檔案時,有方法可以得知目標檔案的大小嗎~?
--
@mintle ◢◢▅◣ 幫我去圖書館借書 橋本 紡【 的仰】
◥◥◤◥◣/ 快點! 【 望】
◢▅● ●◤ ◢ 【 夜半】
▅
/﹊ˋ▁ ◢◣▄▅◢◢ ◢█◢◢ 【空 月】
λ﹍ ▆▅◢▅▄▄◤◢█◢◢█ 我喜歡里香,
▄▄▄▄▄◢▄▄▄▄▄▄▄◢█◤ 好!馬上去 全世界所有的一切加起來 █████▊█◢▌█████◤ / 都沒有里香來的重要
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.13.9
※ 編輯: mintle 來自: 61.230.13.9 (07/27 11:22)
推 H45:怪怪,你是想讓第 n 條執行緒讀取第 n 行文字嗎? (n: 自然數) 07/27 11:27
→ mintle:我學沒多久概念不是很清楚~ 07/27 11:28
→ mintle:還是通通讀到陣列在處理比較好~? 07/27 11:30
推 H45:存網址的檔案通常不大,先讀完檔案再做其他事情,記憶體應夠用 07/27 11:45
→ mintle:恩恩 剛剛用陣列去存好在讀 已經解決了 感謝~ 07/27 11:57
推 H45:若要省記憶體,可考慮邊讀檔案邊做你要做的事情 07/27 14:38