黑马程序员——java基础 io 流 (提高流的读写效率)BufferedReader,BufferedWriter
来源:互联网 发布:淘宝如何举报店铺 编辑:程序博客网 时间:2024/04/29 04:47
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——
io提高流读写效率
io BufferedWriter,BufferedReader第一讲
特有的方法 newLine() 换行的方法 ## BufferedWrite ##
package com.kaka.buffered;import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;/** * 用BufferedWriter写入文件 * * 流的缓冲去,提高流读写效率 * @author Administrator * */public class BufferedTest { public static void main(String[] args) { BufferedMethod(); } private static void BufferedMethod() { // TODO Auto-generated method stub //字符流对象 FileWriter fw=null; //字符流缓冲对象 BufferedWriter bw=null; try { fw=new FileWriter("c:\\demo.txt"); bw=new BufferedWriter(fw); //要写入内容 bw.write("天赋异禀"); //缓存流专有的换行方法 (\r\n) bw.newLine(); //再写入一条 bw.write("天纵奇才"); //刷进文件 bw.flush(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ //只要关闭缓存流就行 if(bw!=null) try { bw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }}``` ## BufferedReader ##**读取文本文件特有的方法 readLine() **<div class="se-preview-section-delimiter"></div>```这里写代码片 package com.kaka.buffered;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;/** * 利用缓冲区去读取文件 * BufferedReader对象特有地方法 * @author Administrator * */public class BufferedReaderTest { public static void main(String[] args) { bufferedReaderMethod(); } private static void bufferedReaderMethod() { // TODO Auto-generated method stub //字符读取流对象 FileReader fr=null; //利用缓冲流,加粗水管 BufferedReader br=null; try { fr=new FileReader("C:\\Documents and Settings\\Administrator" + "\\桌面\\HeiMa\\src\\com\\kaka\\io\\test1.java"); br=new BufferedReader(fr); //用来接收 String lin=null; try { //只要拿到的文本文件部位空,就一直循环 while((lin=br.readLine())!=null){ //一行一行的拿 System.out.println(lin); } } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ if(br!=null) try { br.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }} ## BufferedReader,BufferedWriter ,Copy文件 ## ## 第三讲 ##``package com.kaka.buffered;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;/** *利用BufferedReader 和 BufferedWriter 来 copy文件 * * @author Administrator * */public class BufferedReaderCopy { public static void main(String[] args) { bufferedCopyMethod(); } private static void bufferedCopyMethod() { // TODO Auto-generated method stub BufferedReader br=null; BufferedWriter bw=null; try { br=new BufferedReader(new FileReader("C:\\Documents and Settings\\Administrator" + "\\桌面\\HeiMa\\src\\com\\kaka\\io\\test1.java")); try { bw=new BufferedWriter(new FileWriter("d:\\java.txt")); String str=null; while((str=br.readLine())!=null){ //写入文件 bw.write(str); //换行 bw.newLine(); //刷新 bw.flush(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ if(br!=null) try { br.close(); if(bw!=null) bw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }}## 第四讲 自定义BufferedReader 里面的 readLine()和 close() ##
这里写代码片
“`
“`这里写代码片
package com.kaka.buffered;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
/**
* 利用缓冲区去读取文件
* BufferedReader对象特有地方法
* @author Administrator
*
*/
public class BufferedReaderTest {
public static void main(String[] args) { bufferedReaderMethod(); } private static void bufferedReaderMethod() { // TODO Auto-generated method stub //字符读取流对象 FileReader fr=null; //利用缓冲流,加粗水管 BufferedReader br=null; try { fr=new FileReader("C:\\Documents and Settings\\Administrator" + "\\桌面\\HeiMa\\src\\com\\kaka\\io\\test1.java"); br=new BufferedReader(fr); //用来接收 String lin=null; try { //只要拿到的文本文件部位空,就一直循环 while((lin=br.readLine())!=null){ //一行一行的拿 System.out.println(lin); } } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ if(br!=null) try { br.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
}
## BufferedReader,BufferedWriter ,Copy文件 ##
## 第三讲 ##
“package com.kaka.buffered;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/**
*利用BufferedReader 和 BufferedWriter 来 copy文件
*
* @author Administrator
*
*/
public class BufferedReaderCopy {
public static void main(String[] args) {
bufferedCopyMethod();
}
private static void bufferedCopyMethod() { // TODO Auto-generated method stub BufferedReader br=null; BufferedWriter bw=null; try { br=new BufferedReader(new FileReader("C:\\Documents and Settings\\Administrator" + "\\桌面\\HeiMa\\src\\com\\kaka\\io\\test1.java")); try { bw=new BufferedWriter(new FileWriter("d:\\java.txt")); String str=null; while((str=br.readLine())!=null){ //写入文件 bw.write(str); //换行 bw.newLine(); //刷新 bw.flush(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ if(br!=null) try { br.close(); if(bw!=null) bw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
}
## 装饰设计模式 ##
第四讲 自定义BufferedReader 里面的 readLine()和 close()
这个世界sb很多 这里写代码片
package com.kaka.buffered;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
/**
*
* 自定义BufferedReader
*
* @author Administrator
*
*/
public class CustomBufferedReader {
public static void main(String[] args) { //字符流 FileReader fr=null; MyBufferedReader mbr=null; try { fr = new FileReader("C:\\Documents and Settings\\Administrator" + "\\桌面\\HeiMa\\src\\com\\kaka\\io\\test1.java"); //自定义的缓冲流 mbr=new MyBufferedReader(fr); String len=null; while((len=mbr.myreadLine())!=null){ System.out.println(len); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ try { if(mbr!=null) mbr.myClose(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace();}
}
}
}
MyBufferedReader 这个类就是装饰类
//模拟BufferedReader类 里面 readLine()方法和 close()方法
class MyBufferedReader{
//文件流
public FileReader fr;
//内部类的构造函数
MyBufferedReader(FileReader fr) {
super();
this.fr = fr;
}
//读取 一行 的方法public String myreadLine(){ //定义一个字符串容器 StringBuilder sb=new StringBuilder(); int len=0; try { while((len=fr.read())!=-1){ if(len=='\r') continue; if(len=='\n') return sb.toString(); else{ sb.append((char)len); } } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } //不管 有没有\n,只要sb有就必须返回 if(sb.length()!=0) return sb.toString(); return null;} //关闭的方法public void myClose() throws IOException{ fr.close(); }
}
## 装饰设计模式 将被增强的对象传给增强的类 ##
对原来类功能的增强 例如:FileReader 的增强类(也就是装饰类) BufferedReader(new FileReader())
毕老师的视频讲解源码
package com.kaka.buffered;
/**
*
* 装饰设计模式
* @author Administrator
*
*/
public class ModelBufferedReader {
public static void main(String[] args) {
Person p=new Person();
// p.feed();
SuperPerson sp=new SuperPerson(p);
sp.superFeed(); }
}
//装饰之前的类
class Person{
//装饰前的方法
public void feed(){
System.out.println(“吃饭”);
}
}
//装饰的类
class SuperPerson{
private Person p;public SuperPerson(Person p) { super(); this.p = p;}//增强的吃饭的方法public void superFeed(){ System.out.println("喝汤"); System.out.println("吃水果"); p.feed(); System.out.println("睡觉");}
}
- 黑马程序员——java基础 io 流 (提高流的读写效率)BufferedReader,BufferedWriter
- 黑马程序员——IO流(BufferedWriter和BufferedReader)
- 黑马程序员—Java IO流(Writer、Reader、FileWriter、FileReader、BufferedWriter、BufferedReader)
- 黑马程序员---IO流(字符流缓冲区BufferedWriter、BufferedReader)
- 黑马程序员——Java基础——IO流笔记(BufferedWriter使用示例)
- 黑马程序员——Java基础——IO流笔记(BufferedWriter使用示例)
- Java基础知识IO流(BufferedWriter&BufferedReader)
- 黑马程序员-IO-BufferedReader,BufferedWriter
- 黑马程序员——Java基础——IO流笔记(BufferedReader使用示例)
- IO流——BufferedWriter和BufferedReader
- java基础之IO流中的BufferedReader和BufferedWriter
- 黑马程序员——Java基础——IO流(模拟BufferedReader类中的readLine()方法)
- 黑马程序员 字符流 BufferedWriter 和 BufferedReader 的个人理解
- Java基础---Java---IO流-----BufferedReader、BufferedWriter、缓冲区、装饰设计模式及和继承的区别
- Java基础---Java---IO流-----BufferedReader、BufferedWriter、缓冲区、装饰设计模式及和继承的区别
- java Io 缓冲流 BufferedReader BufferedWriter 笔记
- Java笔记 - IO流(BufferedWriter,BufferedReader)
- Java IO 流的学习之 BufferedReader/BufferedWriter
- ab测试工具结果分析
- C++Primer第五版【学习笔记】——第二章 变量和类型
- MulticastSocket
- windows下使用tcpdump + 模拟器获取android数据包
- Android小知识清单(一)
- 黑马程序员——java基础 io 流 (提高流的读写效率)BufferedReader,BufferedWriter
- 安卓项目打包时候报错--解决方案
- 关于Android PopupWindow中实用Spinner控件点击APP Crash情况整理!
- 解决Android SDK离线文档打开慢的问题
- 网络信息安全攻防学习平台(基础关write up)
- JSON-RPC for Java 访问bitcoind服务
- 约瑟夫环的问题
- 关于AlarmManager的setRepeat使用注意事项
- python中的装饰器