Что IO потоков

Посмотрите на некоторое объяснение на Baidu:

 

 

Конечно: если вы не понимаете, то вам нужно только помнить следующие три предложения.

1.

 

(1) Мы знаем, что все дома пьют воду из водных растений в воде водяного завода поступает из источника воды,

(2) к воде по трубам.

(3) Таким образом, среди воды, она может быть понято как потоки ввода-вывода.

2. Таким образом, JAVA IO потоков в нем;

 


  (1). В Java, Java это растение вода, источник воды является источником, цель дома

(2) в качестве эталона. // Для установки воды, поток воды из моего источника воды завода воды поступает из-за пределов, так что вода является входом прихода. (Вход)

Вода из установки очистки воды домой, выгружают из установки очистки воды (выход).

Для Java программы, это то же самое, от источника к моей Java в потоке, то есть, входной поток (InputStream), в то время как отток из моей Java в выходном потоке (OutputStream)

(3) Таким образом, вы уже знаете, что входной поток (InputStream) и выходной поток (OutputStream) а.

 

3. Фигура ниже буфера взгляда

 


(1) Когда мы нуждаемся в воде, то цистерну, чтобы лучше познакомиться с нами, мы хотим, чтобы быть в состоянии позволить вода есть вода. Для повышения эффективности использования водных ресурсов

Резервуар (2) .java называется буфер, (буферизованный?) Контейнер для конкретного типа базы данных.

Так что это (знак вопроса)? Что это значит?

Мы знаем, что есть много типов танков, то ява буфер, естественно, есть много типов, например, наиболее часто используемых

 

 

Мы уже знаем, InputStream входного потока, входной буфер BufferedInputStream поток;

Аналогичным образом, выходной поток OutputStream, а затем BufferedOutputStream является выходным буфером потока;


4. коммутаций

 


(1) Аналогичным образом, Java в коммутаций, соответствующий фильтр, представляет собой кодированные данные, формат хранения изменений; следующим образом:

Символы могут быть сохранены в указанном формате кодирования.
Вы можете указать формат кодировки текста для интерпретации данных
указанной операции таблицы кодирования завершается конструктором

(2). 分为 InputStreamReader OutputStreamWriter

InputStreamReader
使用: InputStreamReader isr = new InputStreamReader(is, "gbk");


OutputStreamWriter
使用: OutputStreamWriter osw = new OutputStreamWriter(os, "ISO-8859-1");

IO流的分类:
介绍几个最主要的;分别是字符流,字节流,转换流。

 

 


(1).字节流

 


首先:字节流可划分为两类      输入流InputStream     输出流OutputStream

对于java来说:当对文件的读取的时候,使用FileInputStream;

对于java来说:当对文件的输出的时候。使用FileOutputStream;

 

 

(2).字符流
以下就是字符流的详细:

字符流是字节流的类似。

1.字符流分为  输入流    输出流

 

 

 

首先:字符流可划分为两类      输入流Reader     输出流Writer

对于java来说:当对文件的读取的时候,使用FileReader     ;

对于java来说:当对文件的输出的时候。使用FileWriter;

如下,完成一个在f盘下的r.txt文件,再复制到f盘下的rrrr.txt;一个文件的复制,并改名;

 

(1)使用时先创建:  new FileReader( 此处为String类型的需要读入数据文件地址  );


(2)创建一个缓冲区(缓冲区的创建能够提高文件的读取效率)


(3)使用时先创建:  new FileWriter;( 此处为String类型的需要输出数据文件地址  );

 

(4).创建一个缓冲区(缓冲区的创建能够提高文件的读取效率)

 

(5).数据的读取:创建一个byte类型的数组,至于数组的长度建议为1024的倍数;

 

(6).数据的写入

 

(7).流的刷新与关闭:对于初学者记住,先刷新,后关闭。 而关闭的顺序,简单来讲你可以全部关闭,不会出错,

public class CopyDemo4 {
public static void main(String[] args) {
FileReader fr = null;
BufferedReader br = null;
FileWriter fw = null;
BufferedWriter bw = null;
try {
fr = new FileReader("f://rrrr.txt"); //创建输入流
br = new BufferedReader(fr);//创建输入流缓冲区
fw = new FileWriter("f://ww.txt");//创建输出流
bw = new BufferedWriter(fw);//创建输出流缓冲区
String readLine = null;
while ((readLine = br.readLine()) != null) {//数据的复制
bw.write(readLine);
bw.newLine();
bw.flush(); //刷新
}
} catch (IOException e) {//try catch异常
e.printStackTrace();
}
finally {
try {
if (fr != null) {
fr.close(); //流的关闭
}
if (br != null) {
br.close();
}
if (fw != null) {
fw.close();
}
if (bw != null) {
bw.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}

(3).转换流

 


(1).分类  两类

(2).使用
1.先创建输入流对象

InputStream is = new FileInputStream("e://a.txt");

2.创建转换流对象
输入流对象,     读出的编码
InputStreamReader isr = new InputStreamReader(is,    "gbk");
3.创建输出流对象

OutputStream os = new FileOutputStream("d://asd.txt");

4.创建转换流对象
输 出流对象, 输出的编码
OutputStreamWriter osw = new OutputStreamWriter(os,"ISO-8859-1");

以上就是IO流的简单介绍
---------------------
作者:litGrey
来源:CSDN
原文:https://blog.csdn.net/luchenh/article/details/79050105
版权声明:本文为博主原创文章,转载请附上博文链接!

рекомендация

отwww.cnblogs.com/xiaoshen666/p/11118864.html