Java İçselleştirme - Okuyucu / Yazıcıdan / Okuyucuya / Yazıcıya Unicode Dönüştürme
Okuyucu ve Yazar sınıfları, karakter odaklı akış sınıflarıdır. Bunlar, Unicode karakterlerini okumak ve dönüştürmek için kullanılabilir.
Dönüştürmek
Aşağıdaki örnek, Reader ve Writer sınıfları kullanılarak bir Unicode Dizesinin UTF8 baytına [] ve UTF8 baytına [] Unicode bayta [] dönüştürülmesini gösterecektir.
IOTester.java
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.Writer;
import java.nio.charset.Charset;
import java.text.ParseException;
public class I18NTester {
public static void main(String[] args) throws ParseException, IOException {
String input = "This is a sample text" ;
InputStream inputStream = new ByteArrayInputStream(input.getBytes());
//get the UTF-8 data
Reader reader = new InputStreamReader(inputStream, Charset.forName("UTF-8"));
//convert UTF-8 to Unicode
int data = reader.read();
while(data != -1){
char theChar = (char) data;
System.out.print(theChar);
data = reader.read();
}
reader.close();
System.out.println();
//Convert Unicode to UTF-8 Bytes
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
Writer writer = new OutputStreamWriter(outputStream, Charset.forName("UTF-8"));
writer.write(input);
writer.close();
String out = new String(outputStream.toByteArray());
System.out.println(out);
}
}
Çıktı
Aşağıdaki sonucu yazdıracaktır.
This is a sample text
This is a sample text
Yazdır