老师作业求批改点评:

来源:2-7 自由编程

孬帮手慕小菜

2019-11-28 20:32:06

import java.io.File;
import java.io.IOException;

public class Test {
	public static void main(String[] args) {
		File f = new File("F:\\IO");
		File f1 = new File("F:\\IO\\test");
		File t = new File("F:\\IO\\test\\Monday.docx");
		if(!f.exists()) {//如果f盘下没有io文件夹,创建io文件夹并继续执行
			f.mkdirs();
			System.out.println("已经在F盘根目录下创建IO文件夹");
			if(!f1.exists()) {
				f1.mkdirs();
				System.out.println("test文件夹创建完毕");
				}
			else{System.out.println("test文件夹已存在");
			}
			if(!t.exists()) {
				try {
					t.createNewFile();
					System.out.println("Monday.docx文件创建完毕");
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				}
		}
		else {//如果f盘下有io文件夹直接判断内部文件
			System.out.println("F盘根目录已有IO文件夹");
			if(!f1.exists()) {
				f1.mkdirs();
				System.out.println("test文件夹创建完毕");
				}
			else{System.out.println("test文件夹已存在");
			}
			if(!t.exists()) {
				try {
					t.createNewFile();
					System.out.println("Monday.docx文件创建完毕");
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				}
			else{System.out.println("已存在Monday.docx");
			if(!t.isDirectory()) {
				if(t.canRead()){
					System.out.println("这是一个可以被读的文件");
				}
				if(t.canWrite()){
					System.out.println("这是一个可以被写的文件");
				}
				else {
					System.out.println("这是一个不可以可以被读写的文件");
				}
				}
			else {
				System.out.println("这是一个文件夹,这意味着它将不可以被读写");
			}
			}
		}
		}
	}


写回答

1回答

好帮手慕柯南

2019-11-29

同学你好!

整体完成还可以,但是实现有一些繁琐

  1. createNewFile()可以创建多级文件,所以同学不需要一级一级的进行判断

  2. 创建完成后应该返回文件名和父目录的名称,还需要判断是文件还是目录,老师对同学的代码进行了删减,同学可以参考一下(具体的信息老师写在了注释中):

public class Test {
    public static void main(String[] args) {
       // File f = new File("F:\\IO");
        //File f1 = new File("F:\\IO\\test");
        File t = new File("F:\\IO\\test\\Monday.docx");
       // if(!f.exists()) {//如果f盘下没有io文件夹,创建io文件夹并继续执行
           // f.mkdirs();
           // System.out.println("已经在F盘根目录下创建IO文件夹");
           // if(!f1.exists()) {
            //    f1.mkdirs();
            //    System.out.println("test文件夹创建完毕");
            //    }
            //else{System.out.println("test文件夹已存在");
           // }
            if(!t.exists()) {
                try {
                    t.createNewFile();
                    System.out.println("创建文件成功!");
                    System.out.println("文件名称:"+t.getName());//获取文件名
                    System.out.println("文件上一级目录:"+t.getParentFile().getName());//上一级目录的名称
                    
                   
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                }
      /*  }
        else {*///如果f盘下有io文件夹直接判断内部文件
            /*System.out.println("F盘根目录已有IO文件夹");
            if(!f1.exists()) {
                f1.mkdirs();
                System.out.println("test文件夹创建完毕");
                }
            else{System.out.println("test文件夹已存在");
            }
            if(!t.exists()) {
                try {
                    t.createNewFile();
                    System.out.println("Monday1.docx文件创建完毕");
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                }
            else{*//*System.out.println("已存在Monday.docx");*/
            //判断文件的可读性
            System.out.print("文件\\目录:");
            if(!t.isDirectory()) {
            	 System.out.println("这是一个文件");
                if(t.canRead()){
                    System.out.println("这是一个可以被读的文件");
                }
                if(t.canWrite()){
                    System.out.println("这是一个可以被写的文件");
                }
                else {
                    System.out.println("这是一个不可以可以被读写的文件");
                }
                }
            else {
                System.out.println("这是一个文件夹,这意味着它将不可以被读写");
            }
            }
        }

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

1

0 学习 · 11489 问题

查看课程