V tomto výukovém programu se na příkladech seznámíme s Java StringReader a jeho metodami.
StringReader
Třída java.io
obalu lze použít ke čtení dat (ve znacích) z řetězce.
Rozšiřuje abstraktní třídu Reader
.
Poznámka : V StringReader
zadaném řetězci funguje jako zdroj, ze kterého se znaky čte jednotlivě.
Vytvořte StringReader
Aby bylo možné vytvořit StringReader
, musíme java.io.StringReader
nejprve importovat balíček. Jakmile naimportujeme balíček, můžeme vytvořit čtečku řetězců.
// Creates a StringReader StringReader input = new StringReader(String data);
Tady jsme vytvořili a, StringReader
který čte znaky ze zadaného řetězce s názvem data.
Metody StringReader
StringReader
Třída poskytuje implementace pro různé metody prezentovat ve Reader
třídě.
metoda read ()
read()
- načte jeden znak z čtečky řetězcůread(char() array)
- načte znaky ze čtečky a uloží je do zadaného poleread(char() array, int start, int length)
- načte počet znaků rovných délce ze čtečky a uloží do zadaného pole počínaje od začátku pozice
Příklad: Java StringReader
import java.io.StringReader; public class Main ( public static void main(String() args) ( String data = "This is the text read from StringReader."; // Create a character array char() array = new char(100); try ( // Create a StringReader StringReader input = new StringReader(data); //Use the read method input.read(array); System.out.println("Data read from the string:"); System.out.println(array); input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
Výstup
Data načtená z řetězce: Toto je text načtený z StringReader.
Ve výše uvedeném příkladu jsme vytvořili čtečku řetězců s názvem input. Čtečka řetězců je propojena s daty řetězce.
String data = "This is a text in the string."; StringReader input = new StringReader(data);
K načtení dat z řetězce jsme použili read()
metodu.
Zde metoda načte pole znaků ze čtečky a uloží do zadaného pole.
metoda skip ()
K vyřazení a přeskočení zadaného počtu znaků můžeme použít skip()
metodu. Například,
import java.io.StringReader; public class Main ( public static void main(String() args) ( String data = "This is the text read from StringReader"; System.out.println("Original data: " + data); // Create a character array char() array = new char(100); try ( // Create a StringReader StringReader input = new StringReader(data); // Use the skip() method input.skip(5); //Use the read method input.read(array); System.out.println("Data after skipping 5 characters:"); System.out.println(array); input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
Výstup
Původní data: Toto je text načtený ze StringReader Data po přeskočení 5 znaků: je text načtený ze StringReaderu
Ve výše uvedeném příkladu jsme použili skip()
metodu k přeskočení 5 znaků z čtečky řetězců. Z tohoto důvodu, charaktery 'T'
, 'h'
, 'i'
, 's'
a ' '
jsou vynechány z původního řetězce čtenářem.
metoda close ()
K uzavření čtečky řetězců můžeme použít close()
metodu. Jakmile je close()
metoda volána, nemůžeme použít čtečku ke čtení dat z řetězce.
Další metody StringReader
Metoda | Popis |
---|---|
ready() | zkontroluje, zda je čtečka řetězců připravena ke čtení |
mark() | označí pozici ve čtečce, do které byla načtena data |
reset() | vrátí ovládací prvek do bodu ve čtečce, kde byla nastavena značka |
Další informace najdete v Java StringReader (oficiální dokumentace Java).