I det här programmet lär du dig olika tekniker för att skapa en sträng från koncentrationer av en viss fil i Java.
För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:
- Java-sträng
- Java-filklass
Innan vi skapar en sträng från en fil antar vi att vi har en fil med namnet test.txt i vår src- mapp.
Här är innehållet i test.txt
Detta är en testfil.
Exempel 1: Skapa sträng från fil
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); ) )
Produktion
(Det här är en testfil.)
I ovanstående program använder vi System
är user.dir
egendom för att få den aktuella katalogen lagras i variabeln vägen. Kontrollera Java-programmet för att få den aktuella katalogen för mer information.
Vi använde defaultCharset()
för filens kodning. Om du känner till kodningen, använd den, annars är det säkert att använda standardkodning.
Sedan använde vi readAllLines()
metoden för att läsa alla rader från filen. Det tar filens väg och dess kodning och returnerar alla rader som en lista som visas i utdata.
Eftersom det också readAllLines
kan kasta en IOException måste vi definiera vår huvudmetod som sådan
public static void main (String () args) kastar IOException
Exempel 2: Skapa sträng från en fil
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); ) )
Produktion
Detta är en testfil.
I ovanstående program, istället för att få en lista med strängar, får vi en enda sträng, rader, med allt innehåll.
För detta använde vi readAllBytes()
metoden för att läsa alla byte från den angivna sökvägen. Dessa byte konverteras sedan till en sträng med standardkodningen.