黑马程序员技术交流社区
标题:
找面子,兄弟姐妹们帮忙
[打印本页]
作者:
田向向
时间:
2012-6-28 19:18
标题:
找面子,兄弟姐妹们帮忙
本帖最后由 田向向 于 2012-6-28 21:01 编辑
今天大一的问我这么一个程序,但是在大学的时候我没怎么听课,并且现在我看视频学基础还没看到这地方,所以整个把我看懵了,所以到这里找大仙们求助
import java.io.File;
import java.io.IOException;
public class TestFile {
public static void main(String args[])
{
File fl=new File("F:\\TestFile"); //目录
if(!fl.exists())
{
System.out.println("fl不存在,创建该对象......");
if(fl.isDirectory())
{
fl.mkdir();
System.out.println("fl是目录,创建该目录");
}
else
{
System.out.println("不是目录,判断是否为文件......");
if(fl.isFile())
{
try
{
fl.createNewFile();
}
catch (IOException e)
{
System.out.println("创建文件出错!");
}
System.out.println("fl是文件,创建该文件");
}
}
}
else
{
System.out.println("fl已存在!");
}
System.out.println(fl.isFile());
System.out.println(fl.isDirectory());
}
}
测试结果:
fl不存在,创建该对象......
不是目录,判断是否为文件......
false
false
为什么会出这种结果?麻烦大侠们给我讲讲这个程序更好
作者:
赵倩倩
时间:
2012-6-28 19:30
过程还是很简单的。首先这个文件不存在,所以进入if(!fl.exists())分支
然后因为还不存在,所以既不是目录,也不是文件。会进入 if(fl.isDirectory())的else也就是System.out.println("不是目录,判断是否为文件......");
最后这个文件还是没有创建,所以最后还是两个false
作者:
王明明
时间:
2012-6-28 19:45
import java.io.File;
import java.io.IOException;
public class TestFile {
public static void main(String args[])
{
File fl=new File("F:\\TestFile"); //目录 建立File对象把路径赋值给fl
if(!fl.exists()) //判断路径文件是否存在
{
System.out.println("fl不存在,创建该对象......"); //输出
if(fl.isDirectory()) //判断是不是文件夹
{
fl.mkdir();//在已经存在的目录中创建创建文件夹。
System.out.println("fl是目录,创建该目录");//输出
}
else
{
System.out.println("不是目录,判断是否为文件......");
if(fl.isFile())//判断是否为文件
{
try //异常
{
fl.createNewFile();// 创建TestFile文件
}
catch (IOException e)//错误的话 就抛出异常
{
System.out.println("创建文件出错!");
}
System.out.println("fl是文件,创建该文件");
}
}
}
else
{
System.out.println("fl已存在!");
}
System.out.println(fl.isFile());//输出是否是文件 布尔类型
System.out.println(fl.isDirectory());//输出是否是目录 布尔类型
}
}
作者:
李伟
时间:
2012-6-28 20:41
public class TestFile {
public static void main(String args[])
{
File fl=new File("F:\\TestFile"); //目录
if(!fl.exists())
{
System.out.println("fl不存在,创建该对象......");//
执行到这条语句的时候打印出语句(fl不存在,创建该对象......) 但是并没有创建该文件
if(fl.isDirectory())//
由于文件还没有创建就判断是否是目录结果肯定为false,直接跳到else语句里继续执行
{
fl.mkdir();
System.out.println("fl是目录,创建该目录");
}
else
{
System.out.println("不是目录,判断是否为文件......");//
执行到这,打印(不是目录,判断是否为文件......)
if(fl.isFile())//
同理,由于文件还没有创建就判断是否是文件结果肯定为false
{
try
{
fl.createNewFile();
}
catch (IOException e)
{
System.out.println("创建文件出错!");
}
System.out.println("fl是文件,创建该文件");
}
}
}
else
{
System.out.println("fl已存在!");//f1不存在
}
System.out.println(fl.isFile());//
因为不存在打印false
System.out.println(fl.isDirectory());//
因为不存在打印false
}
}
作者:
李伟
时间:
2012-6-28 20:42
public class TestFile {
public static void main(String args[])
{
File fl=new File("F:\\TestFile"); //目录
if(!fl.exists())
{
System.out.println("fl不存在,创建该对象......");//
执行到这条语句的时候打印出语句(fl不存在,创建该对象......) 但是并没有创建该文件
if(fl.isDirectory())//
由于文件还没有创建就判断是否是目录结果肯定为false,直接跳到else语句里继续执行
{
fl.mkdir();
System.out.println("fl是目录,创建该目录");
}
else
{
System.out.println("不是目录,判断是否为文件......");//
执行到这,打印(不是目录,判断是否为文件......)
if(fl.isFile())//
同理,由于文件还没有创建就判断是否是文件结果肯定为false
{
try
{
fl.createNewFile();
}
catch (IOException e)
{
System.out.println("创建文件出错!");
}
System.out.println("fl是文件,创建该文件");
}
}
}
else
{
System.out.println("fl已存在!");//f1不存在
}
System.out.println(fl.isFile());//
因为不存在打印false
System.out.println(fl.isDirectory());//
因为不存在打印false
}
}
作者:
李伟
时间:
2012-6-28 20:43
public class TestFile {
public static void main(String args[])
{
File fl=new File("F:\\TestFile"); //目录
if(!fl.exists())
{
System.out.println("fl不存在,创建该对象......");//
执行到这条语句的时候打印出语句(fl不存在,创建该对象......) 但是并没有创建该文件
if(fl.isDirectory())//
由于文件还没有创建就判断是否是目录结果肯定为false,直接跳到else语句里继续执行
{
fl.mkdir();
System.out.println("fl是目录,创建该目录");
}
else
{
System.out.println("不是目录,判断是否为文件......");//
执行到这,打印(不是目录,判断是否为文件......)
if(fl.isFile())//
同理,由于文件还没有创建就判断是否是文件结果肯定为false
{
try
{
fl.createNewFile();
}
catch (IOException e)
{
System.out.println("创建文件出错!");
}
System.out.println("fl是文件,创建该文件");
}
}
}
else
{
System.out.println("fl已存在!");//f1不存在
}
System.out.println(fl.isFile());//
因为不存在打印false
System.out.println(fl.isDirectory());//
因为不存在打印false
}
}
作者:
黑马-王言龙
时间:
2012-6-28 20:52
本帖最后由 wyl530274554 于 2012-6-28 21:23 编辑
import java.io.File;
import java.io.IOException;
public class TestFile {
public static void main(String args[])
{
File fl=new File("F:\\TestFile");
if(!fl.exists()) //首先判断你TestFile是不是存在,不存在时,执行下面的语句块
{
System.out.println("fl不存在,创建该对象......"); //1、结果显示打印了这句话,说明TestFile根本不存在,后面①②两步的判断定为false;
if(fl.isDirectory()) //①
{
fl.mkdir();
System.out.println("fl是目录,创建该目录");
}
else
{
System.out.println("不是目录,判断是否为文件......"); //2、所以这句会执行
if(fl.isFile()) //②
{
try
{
fl.createNewFile();
}
catch (IOException e)
{
System.out.println("创建文件出错!");
}
System.out.println("fl是文件,创建该文件");
}
}
}
else
{
System.out.println("fl已存在!");
} //if...else语句结束,继续执行下面的两条语句
System.out.println(fl.isFile()); //3、文件不存在,即打印false
System.out.println(fl.isDirectory()); //4、不是目录,即打印false
}
}
复制代码
作者:
那罗庭
时间:
2012-6-28 21:56
努力努力 先达到看懂的水平
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2