W tym programie nauczysz się różnych technik tworzenia łańcucha znaków ze stężeń danego pliku w Javie.
Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:
- Ciąg Java
- Klasa plików Java
Zanim utworzymy ciąg z pliku, zakładamy, że w naszym folderze src znajduje się plik o nazwie test.txt .
Oto zawartość pliku test.txt
To jest plik testowy.
Przykład 1: Utwórz ciąg z pliku
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); ) )
Wynik
(To jest plik testowy).
W powyższym programie, używamy System
„s user.dir
właściwość, aby uzyskać aktualny katalog zapisany w zmiennej PATH. Sprawdź program Java, aby uzyskać bieżący katalog i uzyskać więcej informacji.
Użyliśmy defaultCharset()
do kodowania pliku. Jeśli znasz kodowanie, użyj go, w przeciwnym razie możesz bezpiecznie użyć domyślnego kodowania.
Następnie użyliśmy readAllLines()
metody do odczytania wszystkich wierszy z pliku. Pobiera ścieżkę do pliku i jego kodowanie i zwraca wszystkie wiersze jako listę, jak pokazano w danych wyjściowych.
Ponieważ readAllLines
może również zgłosić IOException, musimy zdefiniować naszą główną metodę jako taką
public static void main (String () args) zgłasza wyjątek IOException
Przykład 2: Utwórz ciąg z pliku
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); ) )
Wynik
To jest plik testowy.
W powyższym programie zamiast otrzymać listę ciągów znaków, otrzymujemy pojedynczy ciąg, wiersze, z całą zawartością.
W tym celu użyliśmy readAllBytes()
metody do odczytania wszystkich bajtów z podanej ścieżki. Te bajty są następnie konwertowane na ciąg przy użyciu domyślnego kodowania.