java本地文件操作

date: 2017-05-25 13:29:48


学而不思则罔,思而不学则殆。


java本地文件操作

一、File类简介
二、文件的创建、删除、重命名
三、文件夹的创建、重命名、删除
四、文件属性的读取
五、文件属性的设置
六、遍历文件夹
七、文件的简单读写

一、File类的简介

package file;
import java.io.File;
public class HelloFile {
    public static void main(String[] args) {
        //创建文件对象
        File file = new File("hello.txt");
        //判断文件 ,返回布尔
        file.isFile();
        System.out.println(file.isFile());
        //路径(文件夹)
        file.isDirectory();
        System.out.println(file.isDirectory());
    }
}

运行结果:

false
false

二、文件的创建、删除、重命名

public class HelloFile {
    public static void main(String[] args) {
        //创建文件对象
        File file = new File("hello.txt");
        //hello.txt会存在于当前目录
        //相对路径格式:xxx//hello.txt
        //绝对路径格式:D://AAA//BBB//hello.txt
        //"../hello.txt" 表示上一级文件结构
        //是否存在
        if(file.exists()){
        //文件
        System.out.println(file.isFile());
        //路径(文件夹)
        System.out.println(file.isDirectory());
        //重命名
        //文件结构必须处于同一个分区
        //文件处于不同的分区,需要使用文件的拷贝,而不是重命名
//        File nameto = new File("src/new Hello.txt");
//        file.renameTo(nameto);
        //文件删除
//        file.delete();
//        System.out.println("文件删除成功");
        }else {
            System.out.println("文件不存在");
            //创建文件
            try {
                file.createNewFile();
                System.out.println("文件已经成功创建");
            } catch (IOException e) {
                System.out.println("文件无法创建");
            }
        }

    }

}

三、文件夹的创建、重命名、删除

//文件夹的创建、重命名、删除
public class HelloFile {

    public static void main(String[] args) {

       //文件夹的创建
        File folder = new File("my new folder");
        folder.mkdir();
        System.out.println("文件夹创建完成");

       //关于folder.mkdir(),返回一个布尔类型
        if(folder.mkdir()){
            System.out.println("文件夹创建完成");
        }else{
            if(folder.exists()){
                System.out.println("文件夹已经存在不用创建了");
            }else{
                System.out.println("文件夹创建失败");
            }
        }

        //文件夹的重命名
        File folder = new File("my new folder");
        File newfolder = new File("my new folder-new");
        if(folder.renameTo(newfolder)){//返回值布尔类型
            System.out.println("done");
        }else{
            System.out.println("fail");
        }

       //文件夹的删除
        File folder = new File("my new folder/two");
        folder.delete();//返回值布尔类型
        //被删除的文件夹必须为空才会删除成功
        if(folder.delete()){
            System.out.println("done");
        }else{
            System.out.println("fail");
        }
    }
}

四、文件属性的读取

public class HelloFile {

    public static void main(String[] args) {
        //文件属性的读取
        File file = new File("text.txt");
        //判断文件是否存在
        System.out.println("判断文件是否存在"+file.exists());
        //读取文件名称
        System.out.println("读取文件名称"+file.getName());
        //读取文件路径
        System.out.println("读取文件路径"+file.getPath());
        //读取文件绝对路径
        System.out.println("读取文件绝对路径"+file.getAbsolutePath());
        //获取文件父级路径
        System.out.println("获取文件父级路径"+new File(file.getAbsolutePath()).getParent());
        //读取文件大小
        System.out.println("读取文件大小"+file.length()+"byte");//字节
        System.out.println("读取文件大小"+(float)file.length()/1000+"KB");
        //判断文件是否被隐藏
        System.out.println("判断文件是否被隐藏"+file.isHidden());
        //判断文件是否可读
        System.out.println("判断文件是否可读"+file.canRead());
        //判断文件是否可写
        System.out.println("判断文件是否可写"+file.canWrite());
        //判断文件是否为文件夹
        System.out.println("判断文件是否为文件夹"+file.isDirectory());
    }

五、文件属性的设置

public class HelloFile {
    public static void main(String[] args) {
        //文件属性的设置
        File file = new File("text.txt");
        if (file.exists()){
            //将文件设定为可写
            file.setWritable(true);
            file.setWritable(false);
            //将文件设定为可读
            file.setReadable(false);
            file.setReadable(true);
            //将文件设定为只读
            file.setReadOnly();

    }

六、遍历文件夹

    //遍历文件夹
    public static void printFiles(File dir){
        printFiles(new File("绝对路径"));
        if (dir.isDirectory()) {
            File next[] = dir.listFiles();//listFiles()返回一个数组
            for(int i= 0;i<next.length;i++){
                System.out.println(next[i].getName());
                if(next[i].isDirectory()){
                    printFiles(next[i]);
                }
            }
        }
    }

七、文件的简单读写

package file;
import java.io.File;
import java.io.IOException;
public class HelloFile {
    public static void main(String[] args) {
     File file = new File("test.txt");
    if(file.exists()){
        System.err.println("exist");
        try{
            FileInputStream fis = new FileInputStream(file);
            InputStreamReader isr = new InputStreamReader(fis,"UTF-8");
            BufferedReader br = new InputStreamReader(isr);
            String line;
            while(line = br.readLine() != NUll){
                System.out.println(line);
            }
            br.close();
            isr.close();
            fis.close();


        }catch (FileNotFoundException e) {
        }catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }catch (Exception e) {
        }


    }
    }

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,026评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,655评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,726评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,204评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,558评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,731评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,944评论 2 314
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,698评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,438评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,633评论 2 247
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,125评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,444评论 3 255
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,137评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,103评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,888评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,772评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,669评论 2 271

推荐阅读更多精彩内容

  • File类简介 File 类用来代表文件或文件夹,通过 File 类,可以对文件与文件夹进行丰富的操作,并且可以获...
    Yanci516阅读 1,593评论 1 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,103评论 18 139
  • 1.创建文件夹 !/bin/sh mkdir -m 777 "%%1" 2.创建文件 !/bin/sh touch...
    BigJeffWang阅读 9,836评论 3 53
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,022评论 2 34
  • 家乡的一条小路。
    梦成阅读 155评论 0 0