黑马程序员技术交流社区

标题: IO中的一个问题。。。 [打印本页]

作者: 黑马任雪刚    时间: 2012-7-15 16:37
标题: IO中的一个问题。。。
本帖最后由 黑马任雪刚 于 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);

        }

}

作者: 张_涛    时间: 2012-7-15 16:43
File f=new File("c:\\a.txt");
创建一个文件对象,此时硬盘还没有产生该文件
boolean b=f.createNewFile();
用上面创建的文件对象调用createNewFile()方法去在硬盘上创建文件,成功返回真。此时硬盘上有了该文件
作者: 许瑞航老师    时间: 2012-7-15 16:46
createNewFile();//
如果
File f=new File("c:\\a.txt");

这个指定的文件不存在
那么就创建一个
作者: 黑马刘涛    时间: 2012-7-15 16:49
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. }
复制代码

作者: 王飞    时间: 2012-7-15 18:29
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);

        }

}
作者: 王飞    时间: 2012-7-15 18:33
哎呀妈呀,你的那句话没去掉 ,别误解啊    现在去掉了  这是我的回答:

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);

        }

}
作者: 。_Smileヾ淡莣    时间: 2012-7-15 23:42
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类型;判断是否创建成功;
作者: 党巾水    时间: 2012-7-16 11:57
File f=new File("c:\\a.txt");//这句话只是在内存中产生一个文件对象,却没有在硬盘生成文件。
boolean b=f.createNewFile();//这句话是把上句话的对象在硬盘上生成实体文件。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2