- BufferedReaderを使用する方法: この方法では、BufferedReaderを使用してファイルを読み込み、各行の行番号を表示します。
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class LineNumberPrinter {
public static void main(String[] args) {
String fileName = "ファイルのパス";
try (BufferedReader br = new BufferedReader(new FileReader(fileName))) {
String line;
int lineNumber = 1;
while ((line = br.readLine()) != null) {
System.out.println("行番号: " + lineNumber + " - " + line);
lineNumber++;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
- LineNumberReaderを使用する方法: LineNumberReaderは、行番号を追跡するための便利なクラスです。
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
public class LineNumberPrinter {
public static void main(String[] args) {
String fileName = "ファイルのパス";
try (LineNumberReader lnr = new LineNumberReader(new FileReader(fileName))) {
String line;
while ((line = lnr.readLine()) != null) {
System.out.println("行番号: " + lnr.getLineNumber() + " - " + line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
- Java 8以降のStreamを使用する方法: Java 8以降では、Stream APIを使用して簡潔なコードで行番号を表示することができます。
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class LineNumberPrinter {
public static void main(String[] args) {
String fileName = "ファイルのパス";
try (Stream<String> lines = Files.lines(Paths.get(fileName))) {
lines
.map(line -> "行番号: " + lines.indexOf(line) + " - " + line)
.forEach(System.out::println);
} catch (IOException e) {
e.printStackTrace();
}
}
}
これらの方法を使用すると、Javaプログラム内の行番号を簡単に表示できます。必要に応じてコードをカスタマイズして、特定の要件に合わせて使用してください。