黑马程序员技术交流社区
标题:
在创建文件夹的时候真正做创建这个动作的是哪一步?
[打印本页]
作者:
王峰230321
时间:
2013-7-18 10:46
标题:
在创建文件夹的时候真正做创建这个动作的是哪一步?
Flie dir =new Flie("asd\\ads\\ads\ads\ads");
System.out.print("mkdir"+dir.mkdirs());
我想知道, 正在做出创建动作的 。 是 new的时候 就创建完了? 还是 dir.mkdirs 调用这个方法的时候 才创建呢
作者:
yinjiek
时间:
2013-7-18 11:25
new的时候就创建了,new代表开辟一个新的空间。
作者:
薛淑凯
时间:
2013-7-18 11:27
肯定是调用方法的时候创建啊,要不然exists还有什么用
作者:
王磊
时间:
2013-7-18 11:40
是在调用方法的时候创建的路径。
file类的特点,实例化该类对象是以指定路径为参数在内存中构造该路径(文件夹)的实例对象。而调用mkdirs方法时,才是在硬盘上创建出这个路径(文件夹)。
该类区别于输入和输出流,流对象在创建的时候是直接在硬盘上创建其关联的路径。
作者:
冒烟的芒果
时间:
2013-7-18 20:19
显然是在调用方法的时候创建
File dir = new File("asd\\das");只是在内存中创建一个实例,并没有写到硬盘上去;
mkdirs()方法 可以查帮助文档知道 它的作用是 创建此抽象路径名指定的目录。
作者:
付龙
时间:
2013-7-18 20:31
调用dir.mkdirs()方法时,文件夹才能创建出来,下面代码是在看视频的时候记录下来的,可能对你有帮助
[code]import java.io.File;
import java.io.IOException;
public class Demo {
/*
* 创建: boolean createNewFile() 创建文件,如果已经存在则不创建
* boolean mkdir()//创建文件夹
* boolean mkdirs()//创建多级文件夹
* 删除:
* boolean delete();删除失败返回false,当文件正在使用时不能删除
* void deleteOnExit()当文件退出时删除给文件(用于临时文件)
*
* 判断:boolean exists()文件是否存在
* boolean isDirectory()判断是此文件是否是一个目录
* boolean isFile()判断此文件是够是一个标准文件
*
* 获取:
* getName:
* getPath://返回绝对路径
* getPaent://返回绝对路径的上一层目录
* getAbsolutePath(获取绝对路径):
*
* static File[] File.listRoots():获取系统的有效盘符(返回数组)
* String[] list();获取指定路径的所有文件和目录(返回数组)
*
* File[] listFiles(); (返回路径名数组,可对象进行操作)获取目录下的文件
*/
public static void main(String[] args) throws IOException {
//将file.txt封装成对象,可以将已有的和未有的文件或文件夹封装成对象
File f = new File("file.txt");
// System.out.println(f.getName());
// System.out.println(f.getPath());//获取相对路径
// System.out.println(f.getAbsolutePath());//获取绝对路径
File f1 = new File("G:\\abc\\a.txt");//在G盘下创建abc文件夹又在abc文件夹次啊创建a.txt文件夹
System.out.println(f1.mkdirs());//创建文件夹
// System.out.println(f1.isDirectory());
System.out.println(f.createNewFile());//创建文件,如果已经存在则不创建
// System.out.println(f.isFile());//判断此文件是否是一个标准文件
// System.out.println(f.delete());//判断此文件是否是一个目录
// System.out.println(f.canExecute());//判断文件是否可执行
// System.out.println(f.exists());//判断文件是否存在
//listRoots方法
File[] files = File.listRoots();//返回系统的所有盘符
for(File k : files){
System.out.println(k);
}
//listFiles方法
File f2 = new File("D:\\");
File[] s = f2.listFiles();//返回D盘下的所有文件和目录
System.out.println(s.length);
for(File str : s){
System.out.println(str.getPath() + "-->" +str.getName());
}
}
}
作者:
denghui1010
时间:
2013-7-18 21:02
new File的时候只是建立了一个File类,就是把路径包装成了一个类,这样就方便用了,下面调用方法的时候调用的同时就做了new一个文件的动作
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2