刘圣杰

 

JavaIO知识总结----温故才能知新

 

  用了将近一个月的时间学习了javase的内容,跟随李兴华的《java开发实战经典》的脚步,总感觉在一个月的时间里缺少了什么,虽然会复习,但是感觉时间紧迫,每天拿出半个小时来复习下基础知识,我觉得还是很有必要的。

  自己学习过程中感觉最难的是JavaIO部分吧,因为知识点太乱了,从今天开始每天半个小时到一个小时的时间里,复习下;

  JavaIO操作主要是使用Java进行输入,输出操作, Java中的所有操作类都存放在java.io包中,在使用时需要导入。

  一:操作文件的类 ----File

  public File(String pathname)  -->在实例化时必须指定好路径。此类方法很多,现在介绍主要的方法。

 

一:创建一个新文件

File类的对象在实例化就可以使用createNewFile()方法创建一个新文件,但是此方法使用throws,必须使用try---catch--进行异常处理。

例如下面的例子:

import java.io.File ;
import java.io.IOException ;
public class FileDemo01{
    public static void main(String args[]){
        File f = new File("d:\\test.txt") ;        // 实例化File类的对象
        try{
            f.createNewFile() ;        // 创建文件,根据给定的路径创建
        }catch(IOException e){
            e.printStackTrace() ;    // 输出异常信息
        }
    }
};

运行后发现d盘出现了文件test.txt

但是,因为java有跨平台行,而在windows和linux中的目录分隔符是不同的。windows是"\" 而linux是"/"  所以必须想办法解决。在java的File的方法中我们发现了public static final String separator 这样系统就会根据系统信息得出分隔符。所以之前代码最好改为:

1 import java.io.File ;
2 import java.io.IOException ;
3 public class FileDemo02{
4     public static void main(String args[]){
5         System.out.println("pathSeparator:" + File.pathSeparator) ;    // 调用静态常量
6         System.out.println("separator:" + File.separator) ;    // 调用静态常量
7     }
8 };

 

二:文件的删除;

使用File类中的delete()方法,我们知道,删除时可能文件不存在,所以我们最好先判断下是否存在,不然会出现异常:

下面的例子:

 1 import java.io.File ;
 2 import java.io.IOException ;
 3 public class FileDemo05{
 4     public static void main(String args[]){
 5         File f = new File("d:"+File.separator+"test.txt") ;        // 实例化File类的对象
 6         if(f.exists()){    // 如果文件存在则删除
 7             f.delete() ;    // 删除文件
 8         }
 9     }
10 };

 

三:创建个文件夹;直接使用mkdir()方法即可

1 import java.io.File ;
2 import java.io.IOException ;
3 public class FileDemo07{
4     public static void main(String args[]){
5         File f = new File("d:"+File.separator+"mldn") ;        // 实例化File类的对象
6         f.mkdir() ;    // 创建文件夹
7     }
8 };

 

四:列出指定目录中的全部文件:

File类中提供了如下方法,1,public String[] list();和2,public File[] listFiles();

1、使用list方法列出

 1 import java.io.File ;
 2 import java.io.IOException ;
 3 public class FileDemo08{
 4     public static void main(String args[]){
 5         File f = new File("d:"+File.separator) ;        // 实例化File类的对象
 6         String str[] = f.list() ;    // 列出给定目录中的内容
 7         for(int i=0;i<str.length;i++){
 8             System.out.println(str[i]) ;
 9         }
10     }
11 };

2、使用listFile方法

 1 import java.io.File ;
 2 import java.io.IOException ;
 3 public class FileDemo09{
 4     public static void main(String args[]){
 5         File f = new File("d:"+File.separator) ;        // 实例化File类的对象
 6         File files[] = f.listFiles() ;    // 列出全部内容
 7         for(int i=0;i<files.length;i++){
 8             System.out.println(files[i]) ;
 9         }
10     }
11 };


五、判断路径是否为目录;

可以直接调用idDirectory()方法

 1 import java.io.File ;
 2 import java.io.IOException ;
 3 public class FileDemo10{
 4     public static void main(String args[]){
 5         File f = new File("d:"+File.separator) ;        // 实例化File类的对象
 6         if(f.isDirectory()){    // 判断是否是目录
 7             System.out.println(f.getPath() + "路径是目录。") ;
 8         }else{
 9             System.out.println(f.getPath() + "路径不是目录。") ;
10         }
11     }
12 };

 今天到此为止,明天继续。每天告诉自己,只要努力了,结果会好的。劳动节快乐,劳动最光荣。  2012-05-01  09:58:10 

                                        ------生命就是这样,痛并快乐着!

posted on 2012-05-01 09:59  刘圣杰  阅读(4122)  评论(0编辑  收藏  举报

导航