黑马程序员------毕老师视频笔记第18-21天------IO输入与输出(2)
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
本篇包含几个示例,分别说明字符流(BufferedReader和BufferedWriter)、字节流(BufferedInputStream和BufferedOutputStream)、PrintStream、Properties的使用。
示例一:复制一个Java源文件
import java.io.*;
class CopyTextByBuf
{public static void main(String[] args) {//建立缓冲区读写对象引用,因为要在不同的代码块内使用,所以定义在try外BufferedReader bufr = null;BufferedWriter bufw = null;//进行读写操作try{bufr = new BufferedReader(new FileReader("BufferedWriterDemo.java"));bufw = new BufferedWriter(new FileWriter("bufWriter_Copy.txt"));String line = null;while((line=bufr.readLine())!=null){bufw.write(line);bufw.newLine();bufw.flush();}}catch (IOException e){throw new RuntimeException("读写失败");}//关闭资源finally{try{if(bufr!=null)bufr.close();}catch (IOException e){throw new RuntimeException("读取关闭失败");}try{if(bufw!=null)bufw.close();}catch (IOException e){throw new RuntimeException("写入关闭失败");}}}
}
编译运行:
复制成功:
查看:
示例二:复制一个图片文件
思路:
1,用字节读取流对象和图片关联。
2,用字节写入流对象创建一个图片文件。用于存储获取到的图片数据。
3,通过循环读写,完成数据的存储。
4,关闭资源。
import java.io.*;
class CopyPic
{public static void main(String[] args) {FileOutputStream fos = null;FileInputStream fis = null;try{fos = new FileOutputStream("c:\\2.bmp");fis = new FileInputStream("c:\\1.bmp");byte[] buf = new byte[1024];int len = 0;while((len=fis.read(buf))!=-1){fos.write(buf,0,len);}}catch (IOException e){throw new RuntimeException("复制文件失败");}finally{try{if(fis!=null)fis.close();}catch (IOException e){throw new RuntimeException("读取关闭失败");}try{if(fos!=null)fos.close();}catch (IOException e){throw new RuntimeException("写入关闭失败");}}}
}
编译运行:
复制成功:
查看:
示例三:创建异常日志文件
import java.io.*;
import java.util.*;
import java.text.*;
class ExceptionInfo
{public static void main(String[] args)throws IOException {try{int[] arr = new int[2];System.out.println(arr[3]);}catch (Exception e){try{Date d = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String s = sdf.format(d);PrintStream ps = new PrintStream("exeception.log");ps.println(s);System.setOut(ps);}catch (IOException ex){throw new RuntimeException("日志文件创建失败");}e.printStackTrace(System.out);}}
}
编译运行:
运行结果:
查看:
示例四:查看系统信息
import java.util.*;
import java.io.*;
class SystemInfo
{public static void main(String[] args) throws IOException{Properties prop = System.getProperties();prop.list(new PrintStream("sysinfo.txt"));}
}
编译运行:
运行结果:
查看:
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
黑马程序员------毕老师视频笔记第18-21天------IO输入与输出(2)相关推荐
- 黑马程序员------毕老师视频笔记第22天------图形化编程(2)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 鼠标事件.键盘事件 这两个事件应该是所有组件都 ...
- 黑马程序员------毕老师视频笔记第五天------面向对象(封装)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 封装:是指隐藏对象的属性和实现细节,仅对外提供 ...
- 黑马程序员------毕老师视频笔记第23-24天------网络编程(1)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 一概述 java对网络编程的支持很强.网络通信 ...
- 黑马程序员------毕老师视频笔记第十二天------多线程(3)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- (回顾) 多线程导致安全问题的原因: l 多 ...
- 黑马程序员------毕老师视频笔记第七天------面向对象(模板方法设计模式)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 模板方法设计模式:定义功能时,功能的一部分是确 ...
- 黑马程序员------毕老师视频笔记第13-17天------集合Collection-Set-(HashSet、TreeSet)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- Collection中除了List之外还有一个 ...
- 黑马程序员------毕老师视频笔记第七天------面向对象(抽象类)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 当多个类中出现了相同的功能,但是功能主体不同, ...
- 黑马程序员------毕老师视频笔记第六天------面向对象(对象初始化过程)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- Person p = new Person(& ...
- 黑马程序员------毕老师视频笔记第22天-----图形化编程(GUI)(1)
---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 用户与计算机交互有两种方式:命令行,图形化界面 ...
最新文章
- 分布式TCP压力测试工具 tcpcopy
- PIC最简约的PWM波形产生程序(PIC16F877A)
- 2022-01-07
- SOA 设计原则和 Web 服务中的数据传输
- 人工智能:物体检测之Faster RCNN模型
- Echarts API说明文档
- C# 中打印、预览、打印机设置和打印属性的方法
- 数据访问层代码自动生成
- js时间格式化函数(兼容IOS)
- vue项目实践教程1:vux项目搭建和简介
- ios自定义UITextView 支持placeholder的方法
- html5液体效果,HTML5/CSS3/SVG实现的液体掉落(滑落)动画
- JDK自带的Timer类
- Invalid escape sequence(valid ones are \b \t \n \f \r \ \' \\)
- jQuery动画:实现渐入渐出
- ssm中web配置各框架的配置文件路径方式
- java代码实现乘法口诀表
- VisualStudio 2017 c++安装
- fMRI与MRI区别+名词解释+MRI中T1和T2的含义与区分
- PyQt5 结合 OpenCV 的开发之旅