输入输入流应用的简单思想,字节流字符流之间的转换,转换时指定编码表的操作
来源:互联网 发布:mysql binlog 编辑:程序博客网 时间:2024/05/20 05:25
package day06;
import java.io.*;
/*
* 1、
* 源:键盘录入
* 目的:控制台
*
* 2、需求:把键盘录入的数据存储到指定的文件中
* 源:键盘
* 目的:文件
*
* 3、需求:把文件中的数据打印到控制台
* 源:文件
* 目的:控制台
*
* 流操作的基本规律:
* 1、明确源和目的
* 源:输入流 InputStream Reader
* 目的:输出流 OutputStream Writer
* 2、明确操作的数据是否是纯文本
* 是:字符流
* 不是:字节流
* 3、当体系明确后,再明确要使用哪个具体的对象
* 通过设备来进行区分:
* 源设备:内存、硬盘、键盘
* 目的设备:内存、硬盘、控制台
*
* 需求分析demo:
* 1、将一个文件中的数据存储到另一个文件中(复制文件)
* 源:因为是源所以使用读取流 InputStreamwriter
* 是不是操作文本文件
* 是:选择Reader
* 这样体系就明确了
*
* 接下来明确要使用该体系中的哪个对象
* 明确设备:硬盘 上的一个文件
* Reader体系中可以操作文件的对象 FileReader
*
* 是否需要提高效率:
* 是:加入Reader体系中的缓冲区 BufferedReader
*
* FileReader fr=new FileReader("c:\\demo.txt");
* BufferedReader buff=new BufferedReader(fr);
*
* 目的:OutputStream Writer
* 是否是纯文本:
* 是:writer
* 设备:硬盘 一个文件
* Writer 体系中可以操作文件的对象FileWriter
*
* 是否需要提高效率:
* 是:加入Reader体系中的缓冲区 BufferedWriter
*
* FileWriter fw=new FileWriter("c:\\demo_copy.txt");
* BufferedWriter buff=new BufferedWriter(fw);
*
* 2、需求:将键盘录入的数据保存到一个文件中
* 源:InputStream Reader
* 是不是纯文本? 是:Reader
* 设备:键盘 对应的对象是System.in
* 选择的是Reader System.in的对象是字节流
* 为了操作键盘文本数据方便,将字节流转成字符流按照字符串操作是最方便的
* 所以既然明确了Reader 那么就将System.in转换成Reader
* 使用Reader体系中转换流 InputStreamReader
*
* InputStreamReader isr=new InputStreamReader(System.in);
*
* 需要提高效率吗? 需要:使用BufferedReader
* BufferedReader bff=new BufferedReader(isr);
*
* 目的:Outputstream Writer
* 是否是纯文本? 是:Writer
* 设备:硬盘 一个文件 使用: FileWriter
* FileWriter fw=new FileWriter("c:\\demo.txt");
* 需要提高效率吗? 需要
* BufferedWriter buff=new BufferedWriter(fw);
* ------------------------------------------------------------------
* 3、要把录入的数据按照指定编码表(utf-8),将数据存储到文件中
*
* 目的:OutputStream Writer
* 是否是纯文本? 是:Writer
* 设备:硬盘,一个文件,使用FileWriter
* 但是FileWriter使用的是默认编码表即GBK
*
* 存储时,希望加入指定的编码表UTF-8,而指定的编码表只有转换流可以指定
* 所以要使用的对象是OutputStreamWriter
* 而该转换流对象要接收一个可以操作文件的字节输出流即:FileOutputStream
* OutputStreamWriter osw=new OutputStreamWriter(new FileOutputStream("c:\\a.txt"),"UTF-8");
* 需要提高效率? 需要 BufferedWriter buff=new BufferedWiter(osw);
* */
import day02.Sop;
class TransStreamDemo {
public static void main(String[] args) throws IOException{
/*
InputStream in=System.in;
InputStreamReader isr=new InputStreamReader(in);
BufferedReader buff=new BufferedReader(isr);
OutputStream out=System.out;
OutputStreamWriter osw=new OutputStreamWriter(out);
BufferedWriter buffer=new BufferedWriter(osw);
*/
//以上注释代码的简写格式
//源:键盘录入 目的:控制台
//BufferedReader buff=new BufferedReader(new InputStreamReader((System.in)));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(System.out));
//源:键盘录入 目的:文件
//BufferedReader buff=new BufferedReader(new InputStreamReader((System.in)));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\out.txt")));
//源:文件 目的:控制台
//BufferedReader buff=new BufferedReader(new InputStreamReader(new FileInputStream("c:\\out.txt")));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(System.out));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\acb.txt"),"UTF-8"));
BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(System.out));
String len=null;
while((len=buff.readLine())!=null){
if("over".equals(len)){
break;
}
buffer.write(len.toUpperCase());
buffer.newLine();
buffer.flush();
}
buff.close();
}
}
import java.io.*;
/*
* 1、
* 源:键盘录入
* 目的:控制台
*
* 2、需求:把键盘录入的数据存储到指定的文件中
* 源:键盘
* 目的:文件
*
* 3、需求:把文件中的数据打印到控制台
* 源:文件
* 目的:控制台
*
* 流操作的基本规律:
* 1、明确源和目的
* 源:输入流 InputStream Reader
* 目的:输出流 OutputStream Writer
* 2、明确操作的数据是否是纯文本
* 是:字符流
* 不是:字节流
* 3、当体系明确后,再明确要使用哪个具体的对象
* 通过设备来进行区分:
* 源设备:内存、硬盘、键盘
* 目的设备:内存、硬盘、控制台
*
* 需求分析demo:
* 1、将一个文件中的数据存储到另一个文件中(复制文件)
* 源:因为是源所以使用读取流 InputStreamwriter
* 是不是操作文本文件
* 是:选择Reader
* 这样体系就明确了
*
* 接下来明确要使用该体系中的哪个对象
* 明确设备:硬盘 上的一个文件
* Reader体系中可以操作文件的对象 FileReader
*
* 是否需要提高效率:
* 是:加入Reader体系中的缓冲区 BufferedReader
*
* FileReader fr=new FileReader("c:\\demo.txt");
* BufferedReader buff=new BufferedReader(fr);
*
* 目的:OutputStream Writer
* 是否是纯文本:
* 是:writer
* 设备:硬盘 一个文件
* Writer 体系中可以操作文件的对象FileWriter
*
* 是否需要提高效率:
* 是:加入Reader体系中的缓冲区 BufferedWriter
*
* FileWriter fw=new FileWriter("c:\\demo_copy.txt");
* BufferedWriter buff=new BufferedWriter(fw);
*
* 2、需求:将键盘录入的数据保存到一个文件中
* 源:InputStream Reader
* 是不是纯文本? 是:Reader
* 设备:键盘 对应的对象是System.in
* 选择的是Reader System.in的对象是字节流
* 为了操作键盘文本数据方便,将字节流转成字符流按照字符串操作是最方便的
* 所以既然明确了Reader 那么就将System.in转换成Reader
* 使用Reader体系中转换流 InputStreamReader
*
* InputStreamReader isr=new InputStreamReader(System.in);
*
* 需要提高效率吗? 需要:使用BufferedReader
* BufferedReader bff=new BufferedReader(isr);
*
* 目的:Outputstream Writer
* 是否是纯文本? 是:Writer
* 设备:硬盘 一个文件 使用: FileWriter
* FileWriter fw=new FileWriter("c:\\demo.txt");
* 需要提高效率吗? 需要
* BufferedWriter buff=new BufferedWriter(fw);
* ------------------------------------------------------------------
* 3、要把录入的数据按照指定编码表(utf-8),将数据存储到文件中
*
* 目的:OutputStream Writer
* 是否是纯文本? 是:Writer
* 设备:硬盘,一个文件,使用FileWriter
* 但是FileWriter使用的是默认编码表即GBK
*
* 存储时,希望加入指定的编码表UTF-8,而指定的编码表只有转换流可以指定
* 所以要使用的对象是OutputStreamWriter
* 而该转换流对象要接收一个可以操作文件的字节输出流即:FileOutputStream
* OutputStreamWriter osw=new OutputStreamWriter(new FileOutputStream("c:\\a.txt"),"UTF-8");
* 需要提高效率? 需要 BufferedWriter buff=new BufferedWiter(osw);
* */
import day02.Sop;
class TransStreamDemo {
public static void main(String[] args) throws IOException{
/*
InputStream in=System.in;
InputStreamReader isr=new InputStreamReader(in);
BufferedReader buff=new BufferedReader(isr);
OutputStream out=System.out;
OutputStreamWriter osw=new OutputStreamWriter(out);
BufferedWriter buffer=new BufferedWriter(osw);
*/
//以上注释代码的简写格式
//源:键盘录入 目的:控制台
//BufferedReader buff=new BufferedReader(new InputStreamReader((System.in)));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(System.out));
//源:键盘录入 目的:文件
//BufferedReader buff=new BufferedReader(new InputStreamReader((System.in)));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\out.txt")));
//源:文件 目的:控制台
//BufferedReader buff=new BufferedReader(new InputStreamReader(new FileInputStream("c:\\out.txt")));
//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(System.out));
//源:键盘录入 目的:文件(指定编码表)
//BufferedReader buff=new BufferedReader(new InputStreamReader(System.in));//BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\acb.txt"),"UTF-8"));
//源:文件 目的:控制台(指定编码表)
BufferedReader buff=new BufferedReader(new InputStreamReader(new FileInputStream("c:\\acb.txt"),"UTF-8"));BufferedWriter buffer=new BufferedWriter(new OutputStreamWriter(System.out));
String len=null;
while((len=buff.readLine())!=null){
if("over".equals(len)){
break;
}
buffer.write(len.toUpperCase());
buffer.newLine();
buffer.flush();
}
buff.close();
}
}
0 0
- 输入输入流应用的简单思想,字节流字符流之间的转换,转换时指定编码表的操作
- 字符输入流向字节输入流的转换
- 字符输入流向字节输入流的转换
- javaday47_IO流_转换流的规律,指定编码表
- 黑马程序员--转换流对象,输出方向,转换流编码效果,字符的编码和解码,String类的构造,方法getBytes,指定编码表,File类
- IO流-字符编码表转换示例
- IO流 基本的字符流 字节流 输出流 输入流 转换流
- IO 输入与输出(8)-- 字节流与字符流的转换
- 字节流与字符流之间的转换
- Java中字节流和字符流之间的转换
- 黑马程序员42,基本数据操作流,字节数组操作流,转换流,编码表
- 字节输入流与字符输入流的一些使用
- 转换流指定编码表utf-8写入文件
- 字符串,字节数组,流之间的转换
- 资源与字节流之间的转换
- 字节流和字符流的转换
- 字符流与字节流的转换
- 字符转换为输入流
- 8.jQuery UI 日历UI
- Coding 代码管理快速入门
- webview中,javascript与java交互
- MongoDB简介
- 偈语
- 输入输入流应用的简单思想,字节流字符流之间的转换,转换时指定编码表的操作
- 使用java8新特性 使用stream获取最大值比parallelStream快
- ubunut14.04下安装bumblebee优化
- HDU 4921 Map
- hdu 2209 翻纸牌游戏 贪心
- Linux yes 命令
- PHP开发工具简介
- windows基础应用程序编程(二):消息说明
- hdu 4928 Series 2 (优化+模拟)