A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马任雪刚 中级黑马   /  2012-7-15 16:37  /  1902 人查看  /  7 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑马任雪刚 于 2012-7-17 17:21 编辑

import java.io.*;
;
public class xutongwenjianyichang {

        public static void main(String[] args) throws Exception
        {
                File f=new File("c:\\a.txt");
                boolean b=f.createNewFile();//这句代码是创建一个文件,而上面的那句代码也会创建一个文件,这两个文件有什么不同呢???
                System.out.println(b);

        }

}

评分

参与人数 1技术分 +1 收起 理由
刘笑 + 1 赞一个!

查看全部评分

7 个回复

倒序浏览
File f=new File("c:\\a.txt");
创建一个文件对象,此时硬盘还没有产生该文件
boolean b=f.createNewFile();
用上面创建的文件对象调用createNewFile()方法去在硬盘上创建文件,成功返回真。此时硬盘上有了该文件

评分

参与人数 1黑马币 +30 收起 理由
刘笑 + 30 赞一个!

查看全部评分

回复 使用道具 举报
createNewFile();//
如果
File f=new File("c:\\a.txt");

这个指定的文件不存在
那么就创建一个
回复 使用道具 举报
public File(String pathname)通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。如果给定字符串是空字符串,那么结果是空抽象路径名。
public boolean createNewFile()
                      throws IOException当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件
File实例和空文件是两个不同的概念。你可以注释掉最后两行,结果就不能再c盘下创建文件。
  1. import java.io.*;
  2. public class CreateFile {

  3.         public static void main(String[] args) throws Exception
  4.         {
  5.                 File f=new File("c:\\a.txt"); //创建一个File实例
  6.                 //boolean b=f.createNewFile();//创建空文件
  7.                 //System.out.println(b);

  8.         }

  9. }
复制代码
回复 使用道具 举报
import java.io.File;


public class xutongwenjianyichang {

        public static void main(String[] args) throws Exception
        {
                File f=new File("c:\\a.txt");   //这句话是创建一个File对象,但是内存中并没有产生这个对象,,记住哦  还没有对象哦
                因为这个构造函数可以接收目录也可以接受路径,所以要用createNewFile()或者mkdir() 判断是目录还是路径
                然后才会创建对象

               
    当读到这句话              f.createNewFile();                时才会去真正创建对象,如果文件对象已经存在,就不在创建,返回false;不存在则创建
                                    boolean b=f.createNewFile();//这句代码是创建一个文件,而上面的那句代码也会创建一个文件,这两个文件有什么不同呢???
                                    System.out.println(b);

        }

}
回复 使用道具 举报
哎呀妈呀,你的那句话没去掉 ,别误解啊    现在去掉了  这是我的回答:

mport java.io.File;

public class xutongwenjianyichang {

        public static void main(String[] args) throws Exception
        {
                File f=new File("c:\\a.txt");   //这句话是创建一个File对象,但是内存中并没有产生这个对象,,记住哦  还没有对象哦
                因为这个构造函数可以接收目录也可以接受路径,所以要用createNewFile()或者mkdir() 判断是目录还是路径
                然后才会创建对象
               
    当读到这句话              f.createNewFile();                时才会去真正创建对象,如果文件对象已经存在,就不在创建,返回false;不存在则创建
                                    boolean b=f.createNewFile();  //这句代码是创建一个文件,而上面的那句代码也会创建一个文件,这两个文件有什么不同呢???----------因为你上一句已经创建了一个文件对象,所以这里的boolean b=f.createNewFile();返回false,不会创建文件对象了
                                    System.out.println(b);

        }

}
回复 使用道具 举报
package cn.itcast.Demo1;

import java.io.*;
;
public class xutongwenjianyichang {

        public static void main(String[] args) throws Exception
        {
                File f=new File("c:\\a.txt");
                boolean b=f.createNewFile();//这句代码是创建一个文件,而上面的那句代码也会创建一个文件,这两个文件有什么不同呢???
                System.out.println(f);
        }
}
//        File f=new File("c:\\a.txt");                System.out.println(f);
//这句话的意思是;创建了一个文件对象但是还没有产生在硬盘上;           这个就是直接打印到了控制台;打印到了硬盘上;
// boolean b=f.createNewFile();
//        这句话的意思是创建了一个新的文件;返回值为boolean类型;判断是否创建成功;
回复 使用道具 举报
File f=new File("c:\\a.txt");//这句话只是在内存中产生一个文件对象,却没有在硬盘生成文件。
boolean b=f.createNewFile();//这句话是把上句话的对象在硬盘上生成实体文件。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马