字节缓冲流 :
name : 表示地址路径
*> BufferedOutputStream ( OutPutStream ): 输出字节缓冲流
该类实现缓冲输出流,通过设置这样的输出流,
应用程序可以向底层输出流写入字节.
而不必为写入的每个字节导致底层系统的调用.
BufferedInputStream bos = new BufferedInputStream ( new FileOutputStream( "name") );
flush( ) 刷新缓冲区
1).缓冲区如果存满会自动在缓冲区向文件输出.和文件同步
2).x.flush : 缓冲区没满时,用flush执行输出行为,和文件同步
**>BufferedInputStream ( InputStream): 输入字节缓冲流
字符流 : 因为节流操作中文不方便 .
IDEA : 默认UTF -8
Windos : 默认GBK
一个汉字存储如果是GBK编码,占用两个字节
如果是UTF - 8 编码 , 占用三个字节 .
字符流 = 字节流 + 编码表 . 汉字存储是无论哪种编码表,第一个字节肯定是负数
编码表 :
ASCLL : 占一个字节,英文,数字,特殊符号 ,中文不能
GBK : 英文一字节 , 中文两字节 .( 笔记本默认)
UTF - 8: 英文一字节,中文三字节 . ( 最 万 能 ) .
编码 : byte[] getBytes( ) ;
byte[] getBytes( String charsetName ) ( UTF - 8 )
解码 : new String ( byte[] bytes)
new String ( byte[] bytes, String charsetName )
字符流抽象基类 : 默认值 : 8192
OutputStreamWriter os = new OutputStreamWriter( new FileOutputStream( "name" ,//UTF -8 ( GBK ))
InputStreamReader ir = new InputStreamReader( new FileOutputStream( "name" ,//UTF -8 ( GBK ) )
写数据5种方式 :
write ( int )
write ( char [] , index , len )
write ( "字符串")
write ( "字符串" ,index , len )
flush ( ) 刷新流
close ( ) 关闭流
字符流读取数据两种方式 :
read ( ) -1结束,返回值就是读取的数据
read( char[] ) -1,结束,返回值是读取的字符数,数据存参数的数组处
字符流改进 :
FileReader ( "文件名路径 ")
FileWrite ( "文件名路径 ")
|
|