Dalam program ini, anda akan mempelajari teknik yang berbeza untuk membuat rentetan dari persetujuan fail tertentu di Java.
Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan Java berikut:
- Rentetan Java
- Kelas Fail Java
Sebelum kita membuat rentetan dari fail, kita menganggap kita mempunyai fail bernama test.txt di folder src kita .
Inilah kandungan test.txt
Ini adalah fail Ujian.
Contoh 1: Buat Rentetan dari fail
import java.io.IOException; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; public class FileString ( public static void main(String() args) throws IOException ( String path = System.getProperty("user.dir") + "\src\test.txt"; Charset encoding = Charset.defaultCharset(); List lines = Files.readAllLines(Paths.get(path), encoding); System.out.println(lines); ) )
Pengeluaran
(Ini adalah, fail Uji.)
Dalam program di atas, kita menggunakan System
's user.dir
harta untuk mendapatkan direktori semasa disimpan di dalam jalan yang berubah-ubah. Periksa Program Java untuk mendapatkan direktori terkini untuk maklumat lebih lanjut.
Kami gunakan defaultCharset()
untuk pengekodan fail. Sekiranya anda mengetahui pengekodan, gunakannya, jika tidak, selamat menggunakan pengekodan lalai.
Kemudian, kami menggunakan readAllLines()
kaedah untuk membaca semua baris dari fail. Ia mengambil jalan file dan pengekodannya dan mengembalikan semua baris sebagai senarai seperti yang ditunjukkan dalam output.
Oleh kerana readAllLines
mungkin juga membuang IOException, kita harus menentukan kaedah utama kita seperti itu
main statik kekosongan awam (String () args) melemparkan IOException
Contoh 2: Buat Rentetan dari fail
import java.io.IOException; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Paths; public class FileString ( public static void main(String() args) throws IOException ( String path = System.getProperty("user.dir") + "\src\test.txt"; Charset encoding = Charset.defaultCharset(); byte() encoded = Files.readAllBytes(Paths.get(path)); String lines = new String(encoded, encoding); System.out.println(lines); ) )
Pengeluaran
Ini adalah fail Ujian.
Dalam program di atas, bukannya mendapatkan senarai rentetan, kami mendapat satu rentetan, baris, dengan semua kandungannya.
Untuk ini, kami menggunakan readAllBytes()
kaedah untuk membaca semua bait dari jalan yang diberikan. Bait ini kemudian ditukar menjadi rentetan menggunakan pengekodan lalai.