Java:IO流的一些典型例子
2015-07-25 09:59
591 查看
1. 文本文件复制 TestCopyText.java
2. 图片复制 TestCopyPic.java
3. 把从键盘录入的字符保存在文件中 TestKeyToFile.java
/** 用字符流复制txt文件 */ import java.io.*; class TestCopyText { public static void main(String[] args) throws Exception { //创建一个读取流,与磁盘源文件关联 FileReader fr = new FileReader("E:\\《基督山伯爵》.txt"); BufferedReader in = new BufferedReader(new FileReader(fr); //创建一个写入流,与磁盘目的文件关联 FileWriter fw = new FileWriter("D:\\基督山伯爵.txt"); BufferedWriter out = new BufferedWriter(fw); //1.读取一行保存在字符串中 String line = null; while((line = in.readLine()) != null) //readLine不包含终止符 { out.write(line, 0, line.length()); out.newLine();//换行 out.flush(); } in.close(); out.close(); //2.读取一个字符 /* int ch = 0; while((ch = in.read()) != -1) { out.write(ch); } in.close(); out.close(); */ //3.读取到一个字符数组中 /* char[] buf = new char[1024]; int len = 0; while((len = in.read(buf)) != -1) { out.write(buf, 0, len); } in.close(); out.close(); */ } }
2. 图片复制 TestCopyPic.java
/** 用字节流复制图片 */ import java.io.*; class TestCopyPic { public static void main(String[] args) throws Exception { //创建读取流关联源文件 FileInputStream fis = new FileInputStream("D:\\dsp.jpg."); BufferedInputStream in = new BufferedInputStream(fis); //创建写入流关联目的文件 FileOutputStream fos = new FileOutputStream("E:\\dsp.jpg"); BufferedOutputStream out = new BufferedOutputStream(fos); int len = 0; byte[] buf = new byte[1024]; while((len = in.read(buf)) != -1) { out.write(buf, 0, len); out.flush(); } in.close(); out.close(); } }
3. 把从键盘录入的字符保存在文件中 TestKeyToFile.java
/** 把从键盘录入的字符保存在文件中,运用转换流 */ import java.io.*; class TestKeyToFile { public static void main(String[] args) throws Exception { InputStream is = System.in; //获取键盘读取流 InputStreamReader isr = new InputStreamReader(is); //通过转换流把字节流流转换成字符流 BufferedReader bufr = new BufferedReader(isr); //字符流加上缓冲区 //创建写入流关联目标文件 FileWriter fw = new FileWriter("D:\\key.txt"); BufferedWriter bufw = new BufferedWriter(fw); String line = null; while((line = bufr.readLine()) != null) { if(line.equals("over")) break; bufw.write(line, 0, line.length()); bufw.flush(); } bufr.close(); bufw.close(); } }
相关文章推荐
- java新手笔记12 单例
- 排序都有哪几种方法?请列举。用JAVA实现一个快速排序?
- Java 多线程(六) synchronized关键字详解
- @[Java]读取文件方法大全
- java新手笔记11 类的静态属性、方法(单例)
- java新手笔记10 构造器
- eclipse中配置maven
- eclipse中配置maven
- Java学习之路:详细解释Java解析XML四种方法
- java 产生的固体物的基础上 增删改的SQL声明
- [Domino]如何用java远程访问Domino邮箱数据
- spring task定时器的运用
- struts2基本介绍
- 10行Java代码实现最近被使用(LRU)缓存
- java正则表达式之课堂内容
- Java动态代理一——动态类Proxy的使用
- JavaWeb-过滤器与拦截器的区别
- Mycat(6):聊天消息表,按月分表 java客户端跨月查询数据
- Java ServiceLoader(SPI)学习
- Eclipse 日期和时间格式自定义