Le Tutoriel de Java CharArrayReader
1. CharArrayReader
CharArrayReader est une sous-classe de Reader. Comme son nom l'indique, CharArrayReader est utilisé pour lire un tableau de caractères dans le style d'un Reader.
CharArrayReader constructors
CharArrayReader(char[] buf)
CharArrayReader(char[] buf, int offset, int length)
Les méthodes de CharArrayReader:
public void close()
public void mark(int readAheadLimit)
public boolean markSupported()
public static Reader nullReader()
public int read()
public int read(char[] cbuf)
public int read(char[] cbuf, int off, int len)
public int read(CharBuffer target)
public boolean ready()
public void reset()
public long skip(long n)
public long transferTo(Writer out)
2. Examples
Par exemple: Lire un tableau de caractères dans le style d'un Reader:
CharArrayReaderEx1.java
package org.o7planning.chararrayreader.ex;
import java.io.CharArrayReader;
import java.io.IOException;
public class CharArrayReaderEx1 {
public static void main(String[] args) throws IOException {
char[] charArray = new char[] { 'T', 'h', 'i', 's', ' ', 'i', 's', ' ', 't', 'e', 'x', 't' };
CharArrayReader reader = new CharArrayReader(charArray);
int code;
while((code = reader.read()) != -1) {
char ch = (char) code;
System.out.println(ch);
}
}
}
Output:
T
h
i
s
i
s
t
e
x
t
Par exemple: Utiliser CharArrayReader et CharArrayWriter pour éliminer les caractères non numériques dans un texte.
CharArrayReaderEx2.java
package org.o7planning.chararrayreader.ex;
import java.io.CharArrayReader;
import java.io.CharArrayWriter;
import java.io.IOException;
public class CharArrayReaderEx2 {
public static void main(String[] args) throws IOException {
String originText = "Log20210217.txt";
char[] charArray = originText.toCharArray();
CharArrayReader reader = new CharArrayReader(charArray);
CharArrayWriter writer = new CharArrayWriter();
int code;
while((code = reader.read()) != -1) {
// '0', '1', ... '9'
if(code >= 48 && code <= 57) {
writer.write(code);
}
}
char[] newCharArray = writer.toCharArray(); // ['2','0','2','1','0','2','1','7']
System.out.println(newCharArray);
String newText = writer.toString();
System.out.println(newText);
}
}
Output:
20210217
20210217
Par exemple: Un texte multi-ligne, supprimer les espaces vides au début et à la fin de chaque ligne pour créer un nouveau texte.
CharArrayReaderEx3.java
package org.o7planning.chararrayreader.ex;
import java.io.BufferedReader;
import java.io.CharArrayReader;
import java.io.IOException;
public class CharArrayReaderEx3 {
public static void main(String[] args) throws IOException {
String originText = " One \n Two \t\n \t\t Three ";
System.out.println(originText);
System.out.println("-----------");
String newText = trimLines(originText);
System.out.println(newText);
}
private static String trimLines(String string) throws IOException {
CharArrayReader reader = new CharArrayReader(string.toCharArray());
BufferedReader in = new BufferedReader(reader);
StringBuilder sb = new StringBuilder(string.length());
String line;
while ((line = in.readLine()) != null) {
sb.append(line.trim()).append('\n');
}
return sb.toString();
}
}
Output:
One
Two
Three
-----------
One
Two
Three
Tutoriels Java IO
- Le Tutoriel de Java CharArrayWriter
- Le Tutoriel de Java FilterReader
- Le Tutoriel de Java FilterWriter
- Le Tutoriel de Java PrintStream
- Le Tutoriel de Java BufferedReader
- Le Tutoriel de Java BufferedWriter
- Le Tutoriel de Java StringReader
- Le Tutoriel de Java StringWriter
- Le Tutoriel de Java PipedReader
- Le Tutoriel de Java LineNumberReader
- Le Tutoriel de Java PushbackReader
- Le Tutoriel de Java PrintWriter
- Tutoriel sur les flux binaires Java IO
- Le Tutoriel de Java IO Character Streams
- Le Tutoriel de Java BufferedOutputStream
- Le Tutoriel de Java ByteArrayOutputStream
- Le Tutoriel de Java DataOutputStream
- Le Tutoriel de Java PipedInputStream
- Le Tutoriel de Java OutputStream
- Le Tutoriel de Java ObjectOutputStream
- Le Tutoriel de Java PushbackInputStream
- Le Tutoriel de Java SequenceInputStream
- Le Tutoriel de Java BufferedInputStream
- Le Tutoriel de Java Reader
- Le Tutoriel de Java Writer
- Le Tutoriel de Java FileReader
- Le Tutoriel de Java FileWriter
- Le Tutoriel de Java CharArrayReader
- Le Tutoriel de Java ByteArrayInputStream
- Le Tutoriel de Java DataInputStream
- Le Tutoriel de Java ObjectInputStream
- Le Tutoriel de Java InputStreamReader
- Le Tutoriel de Java OutputStreamWriter
- Le Tutoriel de Java InputStream
- Le Tutoriel de Java FileInputStream
Show More