一个汉字存储:
如果是GBK编码,占用2个字节
如果是UTF-8编码,占用3个字节
package com.su;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Random;
public class test {
public static void main(String[] args) throws IOException{
String str = "中国";
byte[] bytes = str.getBytes();
System.out.println(Arrays.toString(bytes));
byte[] bytes1 = str.getBytes(StandardCharsets.UTF_8);
System.out.println(Arrays.toString(bytes1));
byte[] bytes2 = str.getBytes("GBK");
System.out.println(Arrays.toString(bytes2));
}
}
package com.su;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Random;
public class test {
public static void main(String[] args) throws IOException{
FileOutputStream fileOutputStream = new FileOutputStream("test.txt");
//创建字符输出流对象
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream);
outputStreamWriter.write("中国");
outputStreamWriter.close();
//创建字符输入流对象
InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream("test.txt"));
int c;
while((c = inputStreamReader.read()) != -1){
System.out.print((char) c);
}
inputStreamReader.close();
}
}
写数据
package com.su;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Random;
public class test {
public static void main(String[] args) throws IOException{
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(new FileOutputStream("test.txt"));
//第一种:写入一个字符
outputStreamWriter.write(97);
outputStreamWriter.write('A');
outputStreamWriter.flush();//刷新流
//第二种:写入一个字符数组
char arr[] = {'h','e','l','l','o',',','w','o','r','l','d','!'};
outputStreamWriter.write(arr);
//第三种:写入一个字符数组一部分
outputStreamWriter.write(arr,6,6);
outputStreamWriter.write('\n');
//第四种:写入一个字符串
outputStreamWriter.write("你好,中国");
outputStreamWriter.write('\n');
//第五种:写入一个字符串一部分
outputStreamWriter.write("好像爱这个世界",1,3);
outputStreamWriter.close();
}
}
读数据
package com.su;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Random;
public class test {
public static void main(String[] args) throws IOException{
InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream("Book.java"));
//一次读一个字符
/* int temp;
while((temp = inputStreamReader.read()) != -1)
System.out.print((char)temp);*/
//一次读一个字符数组
char arr[] = new char[1024];
int len;
while((len = inputStreamReader.read(arr)) != -1){
System.out.print(new String(arr,0,len));
}
inputStreamReader.close();
}
}
字符缓冲流
package com.su;
import java.io.*;
public class test {
public static void main(String[] args) throws IOException{
FileWriter fileWriter = new FileWriter("test.txt");
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
bufferedWriter.write("hello");
bufferedWriter.write(",world");
bufferedWriter.close();
BufferedReader bufferedReader = new BufferedReader(new FileReader("test.txt"));
//一次读取一个字符
/* int temp;
while ((temp = bufferedReader.read()) != -1){
System.out.print((char)temp);
}*/
//一次读取一个字符数组
char arr[] = new char[1024];
int len;
while((len = bufferedReader.read(arr)) != -1){
System.out.print(new String(arr,0,len));
}
bufferedReader.close();
}
}
package com.su;
import java.io.*;
public class test {
public static void main(String[] args) throws IOException{
BufferedReader bufferedReader = new BufferedReader(new FileReader("demo01//src//com//su//Book.java"));
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("e://Book.java"));
char arr[] = new char[1024];
int len;
while((len = bufferedReader.read(arr)) != -1){
bufferedWriter.write(arr,0,len);
System.out.print(new String(arr,0,len));
}
bufferedReader.close();
bufferedWriter.close();
}
}
一次写一行
package com.su;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class demo {
public static void main(String[] args) throws IOException {
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("demo.txt"));
for (int i = 0; i < 10; i++) {
bufferedWriter.write("hello"+i);
bufferedWriter.newLine();
bufferedWriter.flush();
}
bufferedWriter.close();
}
}
package com.su;
import java.io.*;
public class demo {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new FileReader("demo.txt"));
String line;
while ((line = bufferedReader.readLine()) != null){
System.out.println(line);
}
bufferedReader.close();
}
}