Mencari dan Mengalih Keluar Talian Tertentu daripada Fail
Dalam pengaturcaraan moden, selalunya penting untuk memanipulasi fail teks. Satu tugas biasa ialah mencari dan mengalih keluar baris tertentu daripada fail. Proses ini amat berguna apabila anda perlu membersihkan atau mengubah suai data dalam fail teks.
Melaksanakan Fungsi Pembuangan Talian
Pertimbangkan senario di mana anda mempunyai teks fail bernama "myFile.txt" yang mengandungi baris berikut:
aaa bbb ccc ddd
Anda ingin mengalih keluar baris yang mengandungi "bbb" menggunakan kaedah removeLine("bbb"). Untuk mencapai matlamat ini, anda boleh menggunakan kod berikut:
File inputFile = new File("myFile.txt"); File tempFile = new File("myTempFile.txt"); BufferedReader reader = new BufferedReader(new FileReader(inputFile)); BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); String lineToRemove = "bbb"; String currentLine; while ((currentLine = reader.readLine()) != null) { // Compare and skip the line to remove String trimmedLine = currentLine.trim(); if (trimmedLine.equals(lineToRemove)) { continue; } // Write the current line to the temp file writer.write(currentLine + System.getProperty("line.separator")); } writer.close(); reader.close(); boolean successful = tempFile.renameTo(inputFile);
Penjelasan Pelaksanaan
Coretan kod ini membaca setiap baris daripada "myFile.txt". Untuk setiap baris, ia memangkas mana-mana ruang putih di hadapan atau di belakang menggunakan kaedah trim() untuk memastikan perbandingan yang tepat. Jika garisan yang dipangkas sepadan dengan baris yang ingin anda alih keluar ("bbb" dalam kes ini), garis itu melangkau menulis baris itu ke fail sementara. Semua baris lain dilampirkan pada fail temp.
Setelah fail asal diproses sepenuhnya, fail temp dinamakan semula kepada "myFile.txt", menggantikan fail asal. Ini memastikan bahawa fail asal kini mengandungi semua baris kecuali yang anda alih keluar.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Baris Tertentu dengan Cekap daripada Fail Teks dalam Kod?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!