În acest program, veți învăța diferite tehnici pentru a crea un șir din concentele unui fișier dat în Java.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare Java:
- Șir Java
- Clasa de fișiere Java
Înainte de a crea un șir dintr-un fișier, presupunem că avem un fișier numit test.txt în folderul nostru src .
Iată conținutul test.txt
Acesta este un fișier de testare.
Exemplul 1: Creați șir din fișier
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); ) )
Ieșire
(Acesta este un fișier de testare.)
În programul de mai sus, folosim System
e user.dir
proprietate pentru a obține directorul curent stocat în calea variabilă. Verificați Programul Java pentru a obține directorul curent pentru mai multe informații.
Am folosit defaultCharset()
pentru codarea fișierului. Dacă știți codarea, utilizați-o, altfel este sigur să utilizați codificarea implicită.
Apoi, am folosit readAllLines()
metoda pentru a citi toate liniile din fișier. Acesta ia calea fișierului și codificarea acestuia și returnează toate liniile ca o listă așa cum se arată în ieșire.
Deoarece readAllLines
poate arunca și o excepție IOE, trebuie să definim metoda noastră principală ca atare
public static main main (String () args) aruncă IOException
Exemplul 2: Creați șir dintr-un fișier
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); ) )
Ieșire
Acesta este un fișier de testare.
În programul de mai sus, în loc să obținem o listă de șiruri, obținem un singur șir, linii, cu tot conținutul.
Pentru aceasta, am folosit readAllBytes()
metoda pentru a citi toți octeții din calea dată. Acești octeți sunt apoi convertiți într-un șir folosind codificarea implicită.