C:ドライブにabcd.logという名前のログファイルがあり、Javaプログラムで読み取っています。プログラムがログファイルを完全に読み取るのにかかった時間を測定したいので、これを実現する方法を教えてください。 !!
public class Readdemo {
public static void main(String[] args) {
File file = new File("C://abcd.log");
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
System.out.println("Total file size to read (in bytes) : "
+ fis.available());
int content;
while ((content = fis.read()) != -1) {
// convert to char and display it
System.out.print((char) content);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (fis != null)
fis.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
私はこれを思いついた。
public class BufferedRedeem {
public static void main(String[] args) {
BufferedReader br = null;
long startTime = System.currentTimeMillis();
try {
String sCurrentLine;
br = new BufferedReader(new FileReader("C://abcd.log"));
while ((sCurrentLine = br.readLine()) != null) {
System.out.println(sCurrentLine);
}
long elapsedTime = System.currentTimeMillis() - startTime;
System.out.println("Total execution time taken in millis: "
+ elapsedTime);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}