java基础__IO

来源:互联网 发布:百度推广账户换域名 编辑:程序博客网 时间:2024/06/07 05:14

IO流 博客地址:http://www.cnblogs.com/oubo/archive/2012/01/06/2394638.html


file:路径的获取 1.String filePath = "";获取file在磁盘上的绝对路径 

                 2.File file = new File(filePaht);实例封装一个路径

                    1>.File file = new File(dir, "a.txt");路径文件名

        // 获得所有的父级目录结构
       private static void getParentFile(File file) {
                 // 获得父级目录
                 File parentFile = file.getParentFile();
                 // 判断,如果为null 说明父级目录不存在  结束程序
                 if(parentFile==null)
                 return ;
                 // 输出
                  System.out.println(parentFile.getPath());
                 // 调用方法
                 getParentFile(parentFile);
        }        

 //获取文件路径下的所有.java 文件。 递归。。。哦

public static void main(String[] args) {
  
  // 遍历指定目录下的所有 .java 文件, 包括子目录下的
  File dir = new File("D:\\");
  
  listAllJavaFile(dir);
 }

 // 递归调用,递归的每个分支都会运行至碰到普通文件或空目录就结束了
 private static void listAllJavaFile(File dir) {
  //遍历目录下所有的目录和文件
  File[] files = dir.listFiles();
  // files.length
  // 如果目录无法打开会出现 结果 null  这样的情况会出现在遍历系统根目录 如 d:
  if(files==null)
   return ;
  for(File file : files) {
   // 判断 file 是目录还是标准文件
   if(file.isDirectory()) {
    // 是目录
    // 递归调用
    listAllJavaFile(file);
   } else {
    // 是文件
    // 判断是不是 .java
    if(file.getName().endsWith(".java"))
     System.out.println(file.getAbsolutePath());
   }
  }
 }

io对象封装了对设备的读写操作,按照传输数据的方向分为输入和输出流

流可以组成成四种分类

输入字节流 : InputStream

输出字节流 : OutputStream

输入字符流 : Reader

输出字符流 : Writer


文件的copy

private static void copyByByte() throws IOException {
  InputStream in = new FileInputStream("d:/file/a.avi");
  
  OutputStream out = new FileOutputStream("d:/file/b.avi");
  
  int ch;
  
  while((ch=in.read())!=-1)
   out.write(ch);
 }


0 0
原创粉丝点击