import java.io.FileReader;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.List;

public class BacaKarakter {
    public static void main(String[] args) throws IOException {
        Path berkas = Path.of("pesan.txt");
        System.out.println("ukuran byte     : " + Files.size(berkas));

        StringBuilder teks = new StringBuilder();
        try (FileReader pembaca = new FileReader("pesan.txt", StandardCharsets.UTF_8)) {
            char[] penampung = new char[8];
            int dibaca;
            while ((dibaca = pembaca.read(penampung)) != -1) {
                teks.append(penampung, 0, dibaca);
            }
        }
        System.out.println("jumlah karakter : " + teks.length());
        System.out.println("baris terakhir  : " + teks.toString().lines().toList().get(1));

        StringBuilder salah = new StringBuilder();
        try (FileReader pembaca = new FileReader("pesan.txt", StandardCharsets.ISO_8859_1)) {
            char[] penampung = new char[8];
            int dibaca;
            while ((dibaca = pembaca.read(penampung)) != -1) {
                salah.append(penampung, 0, dibaca);
            }
        }
        System.out.println("dibaca latin-1  : " + salah.toString().lines().toList().get(1));
    }
}
