Java - a karakterlánc olvasója
Ebben a gyors bemutatóban fogunk részt venni átalakítani a Olvasó vonóssá sima Java, Guava és az Apache Commons IO könyvtár használatával.
Ez a cikk a „Java - Vissza az alapokhoz” sorozat része, itt, Baeldungon.
1. Java-val
Kezdjük egy egyszerű Java-megoldással, amely a karaktereket egymás után olvassa a Olvasó:
@Test public void givenUsingPlainJava_whenConvertingReaderIntoStringV1_thenCorrect () dobja az IOException {StringReader olvasót = új StringReader ("text"); int intValueOfChar; String targetString = ""; while ((intValueOfChar = olvasó.olvasott ())! = -1) {targetString + = (char) intValueOfChar; } olvasó.zárja (); }
Ha sok tartalmat kell elolvasni, akkor a tömegesen olvasható megoldás jobban működik:
@Test public void givenUsingPlainJava_whenConvertingReaderIntoStringV2_thenCorrect () dobja az IOException {Reader initialReader = new StringReader ("text"); char [] arr = új char [8 * 1024]; StringBuilder puffer = new StringBuilder (); int numCharsRead; while ((numCharsRead = initialReader.read (arr, 0, arr.length))! = -1) {buffer.append (arr, 0, numCharsRead); } initialReader.close (); String targetString = buffer.toString (); }
2. Guavával
A Guava olyan segédprogramot nyújt, amely képes közvetlenül végezze el az átalakítást:
@Test public void givenUsingGuava_whenConvertingReaderIntoString_thenCorrect () dobja az IOException {Reader initialReader = CharSource.wrap ("A Google Guava-val"). OpenStream (); String targetString = CharStreams.toString (initialReader); initialReader.close (); }
3. A Commons IO-val
Ugyanez az Apache Commons IO-val - van egy IO segédprogram, amely képes a közvetlen megtérés:
@Test public void givenUsingCommonsIO_whenConvertingReaderIntoString_thenCorrect () dobja az IOException {Reader initialReader = new StringReader ("Apache Commons-szal"); String targetString = IOUtils.toString (initialReader); initialReader.close (); }
És itt van - az átalakítás 4 módja a Olvasó sima String-be. Ügyeljen arra, hogy ellenőrizze a mintát a GitHubon.