Java-programma om een ​​string te maken van de inhoud van een bestand

In dit programma leer je verschillende technieken om een ​​string te maken op basis van een bepaald bestand in Java.

Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:

  • Java-tekenreeks
  • Java-bestandsklasse

Voordat we een string van een bestand maken, gaan we ervan uit dat we een bestand met de naam test.txt in onze src- map hebben.

Hier is de inhoud van test.txt

 Dit is een testbestand.

Voorbeeld 1: tekenreeks maken van bestand

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

Uitvoer

 (Dit is een testbestand.)

In het bovenstaande programma gebruiken we Systemde user.direigenschap van om de huidige directory op te halen in het variabele pad. Controleer Java-programma om de huidige directory op te halen voor meer informatie.

We gebruikten defaultCharset()voor de codering van het bestand. Als u de codering kent, gebruik deze dan, anders is het veilig om de standaardcodering te gebruiken.

Vervolgens hebben we de readAllLines()methode gebruikt om alle regels uit het bestand te lezen. Het neemt het pad van het bestand en zijn codering en retourneert alle regels als een lijst zoals weergegeven in de uitvoer.

Omdat het readAllLinesook een IOException kan genereren, moeten we onze hoofdmethode als zodanig definiëren

 public static void main (String () args) gooit IOException

Voorbeeld 2: maak een string van een bestand

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

Uitvoer

 Dit is een testbestand.

In het bovenstaande programma krijgen we in plaats van een lijst met tekenreeksen een enkele tekenreeks, regels, met alle inhoud.

Hiervoor hebben we de readAllBytes()methode gebruikt om alle bytes van het opgegeven pad te lezen. Deze bytes worden vervolgens geconverteerd naar een string met behulp van de standaardcodering.

Interessante artikelen...