Java IO流 之 File 键盘命令行实例

Posted verejava

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java IO流 之 File 键盘命令行实例相关的知识,希望对你有一定的参考价值。

http://www.verejava.com/?id=17160055387849

import java.io.File;
import java.util.Scanner;

public class Test {

    private boolean flag=true;
    private String fileName1;
    private String fileName2;
    public Test() {
        
//        通过工具类 FileUtil 实现键盘输入 命令行程序
        
            System.out.println("列出目录内容 (dir )  或者 (dir 目录名)");
            System.out.println("创建文件(mkfile 文件名)");
            System.out.println("重命名文件或目录(rename 原文件 新文件)");
            System.out.println("删除文件(rm 文件名)");
            System.out.println("创建一级目录 (mkdir 目录名)");
            System.out.println("创建多级目录 (mkdirs 目录名)");
            System.out.println("删除目录 (rmdir 目录名)");
        Scanner in=new Scanner(System.in);
        while(flag)
        {
            String input=in.nextLine();
            String[] inputs=input.split(" ");
            String command=inputs[0];
            if(inputs.length>=2)
            {
                fileName1=inputs[1];
            }
            if(inputs.length>=3)
            {
                fileName2=inputs[2];
            }
            
            if("dir".equals(command))
            {
                //列出目录内容 (dir )
                dir();
            }
            if("mkfile".equals(command))
            {
                mkfile();
            }
            if("rename".equals(command))
            {
                rename();
            }
            if("rm".equals(command))
            {
                rm();
            }
            if("mkdir".equals(command))
            {
                mkdir();
            }
            if("mkdirs".equals(command))
            {
                mkdirs();
            }
            if("rmdir".equals(command))
            {
                rmdir();
            }
            if("q".equals(command))
            {
                flag=false;
            }
        }
        
    }
    
    private void rmdir()
    {
        //删除目录 (rmdir 目录名
        FileUtil.deleteDirs(fileName1);
        dir();
    }
    
    private void mkdirs()
    {
        //创建多级目录 (mkdirs 目录名)
        FileUtil.createDirs(fileName1);
        dir();
    }
    
    private void mkdir()
    {
        //创建一级目录 (mkdir 目录名)
        FileUtil.createDir(fileName1);
        dir();
    }
    
    private void rm()
    {
        //删除文件(rm 文件名)
        FileUtil.deleteFile(fileName1);
        dir();
    }
    
    private void rename()
    {
        //重命名文件或目录(rename 原文件 新文件)
        FileUtil.renameFile(fileName1, fileName2);
        dir();
    }
    
    private void mkfile()
    {
        //创建文件(mkfile 文件名)
        FileUtil.createFile(fileName1);
        dir();
    }
    
    private void dir()
    {
        File dir=new File(".");
        File[] dirs=dir.listFiles();
        for(int i=0;dirs!=null&&i<dirs.length;i++)
        {
            File f=dirs[i];
            System.out.println(f.getName());
        }
    }

    public static void main(String[] args) {
       new Test();
    }
}

http://www.verejava.com/?id=17160055387849

以上是关于Java IO流 之 File 键盘命令行实例的主要内容,如果未能解决你的问题,请参考以下文章

Java IO流 之 BufferedReader BufferedWriter 实例

java之file类引入

JAVA基础之IO流

Java之文件IO流详解首卷

Java-IO流实验

Java学习笔记之 IO包 字节流