Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Membaca Baris Khusus dengan Cekap daripada Fail di Java?

Bagaimanakah Saya Boleh Membaca Baris Khusus dengan Cekap daripada Fail di Java?

Susan Sarandon
Lepaskan: 2024-11-27 11:56:09
asal
907 orang telah melayarinya

How Can I Efficiently Read Specific Lines from a File in Java?

Membaca Baris Khusus daripada Fail dalam Java

Mendapatkan semula baris tertentu daripada fail boleh berguna dalam pelbagai senario. Java menawarkan pelbagai cara untuk menyelesaikan tugas ini, terutamanya apabila bekerja dengan kedua-dua fail kecil dan besar.

Fail Kecil

Jika saiz fail agak kecil, pendekatan yang paling mudah adalah untuk membaca keseluruhan fail ke dalam memori dan kemudian mengakses baris yang dikehendaki. Ini boleh dicapai menggunakan kaedah Files.readAllLines():

String line32 = Files.readAllLines(Paths.get("file.txt")).get(32);
Salin selepas log masuk

Dalam contoh ini, bahagian Paths.get("file.txt") mewakili laluan fail dan readAllLines() membaca keseluruhan fail dan menyimpan setiap baris sebagai rentetan dalam senarai. Dengan menggunakan get(32), kita boleh mengakses terus baris ke-32 daripada senarai.

Fail Besar

Untuk fail besar, membaca keseluruhan fail ke dalam memori mungkin tidak cekap. Dalam kes sedemikian, kaedah Files.lines() boleh digunakan untuk memproses fail baris demi baris:

try (Stream<String> lines = Files.lines(Paths.get("file.txt"))) {
    line32 = lines.skip(31).findFirst().get();
}
Salin selepas log masuk

Di sini, Files.lines() mencipta aliran baris daripada fail. Kaedah langkau(31) melangkau 31 baris pertama, dan findFirst() mendapatkan semula baris ke-32. Akhir sekali, get() menukar nilai pilihan kepada rentetan.

Pendekatan ini membolehkan anda melintasi fail dengan cekap dan mendapatkan semula baris yang dikehendaki tanpa perlu memuatkan keseluruhan fail ke dalam memori.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Baris Khusus dengan Cekap daripada Fail di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan