IO(一)
来源:互联网 发布:mac idea 两个窗口 编辑:程序博客网 时间:2024/05/26 22:59
IO流
IO流是用来处理设备之间的数据传输,java对数据操作是通过流的方式,所有的流都定义在java.io包里。
File
File类是IO包中唯一代表磁盘文件本身的对象。File能够完成创建、删除文件,重命名文件,判断文件的读写权限及文件是否存在,设置和查询文件的最近修改时间等操作。
递归
就函数自己调用自己。
递归要注意:递归要有条件,不然是死循环。
大量的递归是很占内存的,因为要等递归函数结束调用函数才能结束。
用递归算法列出文件夹下的文件,包括子文件夹子
import java.io.File;import java.io.IOException;public class Demo{public static void main(String[] args){File f=new File("F:\\JavaCode");myList(f,0);}public static String getKong(int level) //为了使打印美观,在子文件夹前缩进{StringBuilder sb=new StringBuilder();for(int i=0;i<=level;i++){sb.append(" ");}return sb.toString();}public static void myList(File f,int level) //每递归一次level将自增1,使缩进空增加{level++;System.out.println(getKong(level)+f);if(f.isDirectory()){File[] f1=f.listFiles();for(File f2:f1) //遍历数组{myList(f2,level); //递归}}}}
FilenameFilter
文件过滤器,它是一个接口。可以将想要的文件特性定义成一个类然后实现这个接口。
import java.io.File;import java.io.FilenameFilter;class FilenameFilterDemo{public static void main(String[] args){File f=new File("F:\\JavaCode");File[] f1=f.listFiles(new MyFilter(".java"));for(File f2:f1){System.out.println(f2);}}}class MyFilter implements FilenameFilter {private String name;//将需要的文件后缀名存着MyFilter(String name){this.name=name;}public boolean accept(File dir,String name){return name.endsWith(this.name); //比较文件尾字符串是否相同}}
流
流动方向有输入流和输出流
处理数据的单位有字节流和字符流
功能不同有节点流和处理流
节点流:直接操作目标设备
处理流:通过操作节点滚从而间接完成输入或输出功能的流。其实就是一个装饰类
所有流都继承
InputStream OutputStream
Writer Reader
0 0
- Java IO(一)
- IO (一)
- IO总结(一)
- IO流(一)
- IO(一)
- Java IO(一)
- Java--IO(一)
- io流(一)
- Java IO(一)
- [Java] IO(一)
- java io(一)
- JAVA IO(一)
- IO(一)
- IO(一)
- 通用IO(一)
- IO(一)
- Socket,IO(一)
- IO流(一)
- 良好的设计习惯
- 课程设计之11
- Linux基础入门之根目录下四类文件夹
- OCUnit测试类报错:SenTestingKit/SenTestingKit.h file not found
- C语言断言assert详解
- IO(一)
- No repository found error in Installing ADT in eclipse 解决方法
- 关于中文分词
- Android登录学校正方教务处--CSDN第一次发帖
- 可自动换行的radiobutton
- 二叉树三种遍历的非递归算法
- svn更新代码后,无法打开xcode工程文件
- roslaunch使用示例
- svn的更新、合并、提交