Java-programm stringi loomiseks faili sisust

Selles programmis õpite erinevaid tehnikaid stringi loomiseks Java-failis sisalduvate failide sisenditest.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:

  • Java string
  • Java failiklass

Enne failist stringi loomist eeldame, et meie src kaustas on fail test.txt .

Siin on testi.txt sisu

 See on testfail.

Näide 1: stringi loomine failist

 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); ) )

Väljund

 (See on testfail.)

Eespool programmi, mida me kasutame System's user.dirvara saada praeguse kataloogi salvestatud muutuja tee. Kontrollige Java programmi, et saada praeguse kataloogi kohta lisateavet.

Me kasutasime defaultCharset()faili kodeerimist. Kui teate kodeeringut, kasutage seda, muidu on vaikekodeeringut turvaline kasutada.

Seejärel readAllLines()lugesime failist kõigi ridade lugemiseks meetodit. See võtab faili ja selle kodeeringu tee ning tagastab kõik read loendina, nagu väljundis näidatud.

Kuna see readAllLinesvõib põhjustada ka IOExceptioni, peame sellisena määrama oma peamise meetodi

 public staatiline void main (String () args) viskab IOExceptioni

Näide 2: failist stringi loomine

 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); ) )

Väljund

 See on testfail.

Ülaltoodud programmis saame stringide loendi hankimise asemel ühe stringi, kogu sisuga read.

Selle jaoks kasutasime readAllBytes()meetodit kõigi etteantud tee baitide lugemiseks. Need baidid teisendatakse seejärel stringiks, kasutades vaikekodeeringut.

Huvitavad Artiklid...