Java中I/O的File类_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java中I/O的File类

Java中I/O的File类

 2018/10/19 16:01:15  andrew7676  程序员俱乐部  我要评论(0)
  • 摘要:1.Java中I/O的File类1.在windows中创建一个文件,用createNewFile()方法。1)Windows使用c:\表示;2)其他系统使用c:/表示;3)但在java中”\”表示转义字符,所以要使用”\\”来表示路径中的”\”;2.分隔符使用File.pathSeparator比较好,不会受系统的影响。但是生成的文件是相对的目录(项目所在默认为根目录)。Filefile=newFile(File.pathSeparator+"abc.txt");importjava.io
  • 标签:file Java
1. Java中I/O的File类
class="java">
1. 在windows中创建一个文件,用createNewFile()方法。
1) Windows使用c:\表示;
2) 其他系统使用c:/表示;
3) 但在java中”\”表示转义字符,所以要使用”\\”来表示路径中的”\”;

2. 分隔符使用File.pathSeparator比较好,不会受系统的影响。但是生成的文件是相对的目录(项目所在默认为根目录)。
File file = new File(File.pathSeparator + "abc.txt");
import java.io.File;
public class FileTest1 {
    public static void main(String[] args) throws Exception {
        File file = new File("c:\\abc.txt");
        System.out.println(file.createNewFile());
    }
}

3. 只要有路径,两个字符串拼接起来可以组成一个路径就可以 new File("c:/abc", "xyz/hello.txt")。
import java.io.File;
public class FileTest2 {
    public static void main(String[] args) throws Exception {
        File file = new File("c:/abc");
        File file2 = new File("c:/abc", "xyz/hello.txt");
        file2.createNewFile();
    }
}

4. 创建一个/多个目录使用file.mkdir()和file.mkdirs()方法。
import java.io.File;
public class FileTest3 {
    public static void main(String[] args) {
        File file = new File("c:/abc/xyz/hello");
        System.out.println(file.mkdirs());
        System.out.println(file.isFile());
    }
}

5. file.list()返回路径首层的所有文件和文件夹;返回String[]数组。
   file.listFiles()返回路径首层的所有文件和文件夹;返回File[]数组。
   getParent()获取文件所在的文件夹名。
import java.io.File;
public class FileTest4 {
    public static void main(String[] args) {
        File file = new File("c:/abc");
        String[] names = file.list();
        for(String name : names){
            System.out.println(name);
        }
        File[] files = file.listFiles();
        for(File f : files){
            System.out.println(f.getName());
            //System.out.println(f.getParent());
        }
    }
}

6. file.delete()方法可以删除文件。file.createNewFile()方法可以创建文件。
import java.io.File;
public class FileTest5 {
    public static void main(String[] args) throws Exception {
        File file = new File("c:\\abc\\xyz\\hello\\abc.txt");
        //file.createNewFile();
        file.delete();
    }
}

7. name.lastIndexOf(".java")包含".java"的文件。
   endsWith(".java")以".java"结尾的文件。
   FileNameFilter类可以重载File类的list()方法。
import java.io.File;
public class FileTest6 {
    public static void main(String[] args) {
        File file = new File("C:\\abc\\xyz\\hello");
        String[] names = file.list();
        for (String name : names) {
            if (name.endsWith(".java")) {
                System.out.println(name);
            }
        }
    }
}

8. 重写file.list(new FilenameFilter())方法(策略模式)。
   构造accept(File dir, String name)方法,dir是文件路径,name是文件名。
import java.io.File;
import java.io.FilenameFilter;
public class FileTest7 {
    public static void main(String[] args) {
        File file = new File("c:\\abc\\xyz\\hello");
        String[] names = file.list(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
                if (name.endsWith(".txt")) {
                    return true;
                }
                return false;
            }
        });
        for(String name : names){
            System.out.println(name);
        }
    }
}

9. 使用File.Separator路径分隔符创建项目所在的盘符的根目录的文件。
import java.io.File;
public class FileTest8 {
    public static void main(String[] args) throws Exception {
        File file = new File(File.separator);
        File file2 = new File(file, "test.txt");
        System.out.println(file2.createNewFile());
    }
}
上一篇: Java中递归 下一篇: 没有下一篇了!
发表评论
用户名: 匿名