[英]read lines in txt file [java]
我會盡量清楚,但如果我的問題不完美,請原諒我。 我有一個包含幾行數據的txt文件。 例:
123 ralph bose 20000 200 1 2
256 ed shane 30000 100 2 4
...
我需要按順序讀取每一行並將其傳遞回另一個類中的方法進行處理。 我知道如何使用StringTokenizer將每一行分解為元素。
但是,我不確定如何一次讀取一行,將元素傳回另一個類,然后,一旦處理完成,就讀取NEXT行。 我的類之間的方法合作工作正常(測試),但我如何一次讀取一行?
我正在考慮創建一個數組,其中每一行都是一個數組元素,但由於行數未知,我無法創建數組,因為我不知道它的最終長度。
謝謝
巴巴
編輯
粗略設置:
A級
end_of_file = f1.readRecord(emp);
if(!end_of_file)
{
slip.printPay(slipWrite);
}
B級
public boolean readRecord(Employee pers) throws IOException {
boolean eof = false ;
String line = in.readLine() ;
???
}
文件名永遠不會傳遞
所以直到這里我可以閱讀第一行,但我想我需要一種方法來循環讀取它們在類之間來回逐個讀取它們。
棘手的...
有很多方法可以一次讀取整行; Scanner
可能最簡單:
final Scanner s = new Scanner(yourFile);
while(s.hasNextLine()) {
final String line = s.nextLine();
YourClass.processLine(line);
}
void readLine(String fileName)
{
java.io.BufferedReader br = null;
try
{
br = new java.io.BufferedReader(new java.io.FileReader(fileName));
String line = null;
while(true)
{
line = br.readLine();
if(line == null)
break;
// process your line here
}
}catch(Exception e){
}finally{
if(br != null)
{
try{br.close();}catch(Exception e){}
}
}
}
此外,如果你想拆分字符串...使用
字符串類split
方法。 根據空間分裂...你可以做... line.split("\\\\s*")
希望它有效
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.