锁定老帖子 主题:java之IO 总结和笔记
精华帖 (1) :: 良好帖 (3) :: 新手帖 (12) :: 隐藏帖 (3)
|
|
---|---|
作者 | 正文 |
发表时间:2010-10-26
File f=new File("1.txt"); f.createNewFile();//创建文件 f.mkdir();//创建目录 f.deleteOnExit();//程序结束时自动删除创建的文件 File.separator 是跨系统文件分隔符 //list方法,列出文件夹下所有的文件和目录名称,如果过滤,传入FilenameFilter,下面是只返回扩展名是java的文件名 String[] names=f.list(new FilenameFilter() { public boolean accept(File dir,String name) { return name.indexOf(".java")!=-1; } }); 输入输出流: 节点流 过滤流 InputStream OutputStream FileInputStream FileOutputStream BufferedInputStream 带缓冲过滤流 BufferedOutputStream 带缓冲输出过滤流 DataInputStream 提供读写java中基本数据类型的过滤流 PipedInputStream和PipedOutputStream 管道流,用于线程间的通信。 一个线程的PipedInputStream对象从另一个线程的PipedOutputStream对象读取输入。 要使管道流有用,必须同时构造管道输入流和管道输出流。 import java.io.*; class PipedStreamTest { public static void main(String[] args) { PipedOutputStream pos=new PipedOutputStream(); PipedInputStream pis=new PipedInputStream(); try { pos.connect(pis); new Producer(pos).start(); new Consumer(pis).start(); } catch(Exception e) { e.printStackTrace(); } } } class Producer extends Thread { private PipedOutputStream pos; public Producer(PipedOutputStream pos) { this.pos=pos; } public void run() { try { pos.write("Hello,welcome you!".getBytes()); pos.close(); } catch(Exception e) { e.printStackTrace(); } } } class Consumer extends Thread { private PipedInputStream pis; public Consumer(PipedInputStream pis) { this.pis=pis; } public void run() { try { byte[] buf=new byte[100]; int len=pis.read(buf); System.out.println(new String(buf,0,len)); pis.close(); } catch(Exception e) { e.printStackTrace(); } } } Reader和Writer这两个抽象类主要用来读写字符流 InputStreamReader OutputStreamWriter 字节流和字符流的桥梁 FileInputStream fis=new FileInputStream("1.txt"); InputStreamReader isr=new InputStreamReader(fis); BufferedReader br=new BufferedReader(isr); System.out.println(br.readLine()); br.close(); InputStreamReader isr=new InputStreamReader(System.in); BufferedReader br=new BufferedReader(isr); String strLine; while((strLine=br.readLine())!=null) { System.out.println(strLine); } br.close(); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-10-26
建议楼主 结合 装饰者模式 一起看
JAVA与模式 阎宏 有专门一章讲 IO库的设计 |
|
返回顶楼 | |
发表时间:2010-10-26
programlv 写道 建议楼主 结合 装饰者模式 一起看
JAVA与模式 阎宏 有专门一章讲 IO库的设计 支持 我看了两边还在看 |
|
返回顶楼 | |
发表时间:2010-10-26
不是我挑剔。。楼主,在je总结io,我认为如果连nio都不提。。此帖必然悲剧。
|
|
返回顶楼 | |
发表时间:2010-10-27
第二段代码有问题哦
我要是有个文件叫think.in.java.pdf 你也给列出来了 |
|
返回顶楼 | |
发表时间:2010-10-27
出乎我意料,竟然有人投良好。。但我仍然相信,此帖会悲剧。
|
|
返回顶楼 | |
发表时间:2010-10-27
aoliwen521 写道 不是我挑剔。。楼主,在je总结io,我认为如果连nio都不提。。此帖必然悲剧。
同意,必然悲剧。 |
|
返回顶楼 | |
发表时间:2010-10-27
楼主 这个总结 太简单了点 没啥作用
|
|
返回顶楼 | |
发表时间:2010-10-27
无足轻重。。。
没什么价值 |
|
返回顶楼 | |
发表时间:2010-10-27
学习下管道流的例子,以前没用过,谢谢总结!
|
|
返回顶楼 | |