Javaでファイルストリームを利用してファイルサイズを取得するにはどうすればいいのでしょうか?
ファイルのサイズをファイルストリームから読み取るには、Java の `File` クラスと `FileInputStream` クラスを使用できます。以下にサンプルコードを示します。
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class FileSizeExample {
public static void main(String[] args) {
File file = new File("path/to/your/file");
long fileSize = getFileSize(file);
System.out.println("File size: " + fileSize + " bytes");
}
public static long getFileSize(File file) {
long fileSize = 0;
try (FileInputStream fis = new FileInputStream(file)) {
fileSize = fis.available();
} catch (IOException e) {
e.printStackTrace();
}
return fileSize;
}
}
上のサンプルコードでは、まず Fileオブジェクトを作成し、読み込むファイルのパスを指定しています。次に、getFileSizeメソッドを呼び出し、Fileオブジェクトを引数として渡しています。getFileSizeメソッド内では、FileInputStreamオブジェクトを作成し、そのavailableメソッドでファイルのサイズを取得し、最後にファイルサイズを返しています。
利用可能なバイト数が返されるavailableメソッドは、ファイルの実際のサイズではないことに注意してください。ファイルの実サイズが必要な場合、Fileクラスのlengthメソッドなどの他の方法を使用してください。