您的位置:首页 > 职场人生

黑马程序员--IO流(20天)

2014-02-05 20:39 232 查看
---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

1.file类 :用来将文件或文件夹封装成对象,方便操作属性;
 同时file对象可以作为参数传递给流的构造函数;

2.关于file:
File 变量 = new File("文件名或路径");
sop(变量);
//其中file中的里面括号写的是什么输出的就是什么;

3.separaor: 如果你安装的是linux的jdk的话则是linux的分割符,如果是windows下的分割符;

4.关于file,如果已经有这个文件则会不会再创建新的文件;

示例代码:

package earth;

import java.io.*;

public class File_create01 {

public static void main(String[] args) throws IOException{
test();

}

public static void test() throws IOException{
File f = new File("ok05.txt");
sop(f.createNewFile());

}

}

5.删除:
boolean delete();//删除失败返回false,如果文件正在被使用,则无法删除返回false。
void deleteOnExit();//程序退出时删除指定文件。

6.boolean canExecute() //测试应用程序是否可以执行此抽象路径表示的文件;

7.boolean canRead() //测试应用程序是否可以读取此抽象路径表示的文件;

8.boolean canWrite() //测试应用程序是否可以修改此抽象路径名表示的文件;

9.mkdir //只能创建一级目录;

10.mkdirs //创建多级目录;

11.isDirectory(); //是否是目录,使用前必须判断文件对象封装的内容是否存在;

12.isFile(); //是否是文件,使用前必须判断文件对象封装的内容是否存在;

13.boolean exists(); //判断文件是否存在;

14.boolean isHidden(); //是否是隐藏;

15.boolean isAbsolutePath(); //是否是绝对路径;

16.lastModified() //最后一次修改的时间;

17.length();  //长度;

18.getParent(); //返回绝对路径中的父目录;

19.renameTo();  //修改文件的名字,同时进行剪切;

20.listRootsDemo(); //列出当前盘符的有效路径;

  

21.示例代码:

package earth;

import java.io.*;

public class File_Create01 {

public static void main(String[] args) throws IOException{
Ce();

}

public static void Ce() throws IOException{
File[] files = File.listRoots();

for(File f : files){
System.out.println(f);
}

}

}

22.读取某个分区下的所有文件(包含隐藏文件):

  示例代码:
package earth;

import java.io.*;

public class File_Create01 {

public static void main(String[] args) throws IOException{
ce1();

}

public static void ce1() throws IOException{
File f = new File("G:\\");
String[] names = f.list();
for(String name : names){
System.out.println(name);
}

}

public static void Ce() throws IOException{
File[] files = File.listRoots();

for(File f : files){
System.out.println(f);
}

}

}

23.使用list方法的file对象必须是封装了一个目录。

24.list(FilenameFiltern filter) 示例;

package earth;

import java.io.*;

public class File_Create01 {

public static void main(String[] args) throws IOException{
ce2();

}

public static void ce2(){
File f1 = new  File("G:\\");
String[] str1 = f1.list(new FilenameFilter() {

public boolean accept(File f1, String str1) {
System.out.println(f1 + str1);
return false;
}
});

}

25.将分区下所文件及子目录显示出来;

示例代码

package earth;

import java.io.*;

public class File_Create02 {

 public static void main(String[] args){
File fi01 = new File("G:\\黑马");
show(fi01);

 }

 

 public static void show( File fi01){
 
File[] fi02 = fi01.listFiles();
for(int x = 0; x < fi02.length; x++){
if(fi02[x].isDirectory()){
show(fi02[x]);
//对目录内的文件进行读取,
}
else{
System.out.println(fi02[x]);
}
}

 }

}

26.递归注意事项;
a。限定条件。
b.要注意递归的次数,尽量避免内存溢出。

27.删除问价夹和里面的数据文件;

示例代码:

package earth;

import java.io.*;

public class File_Create03 {

public static void main(String[] args){
File fi = new File("");
Rem(fi);

}

//利用递归的方法对数据进行删除;

public static void Rem(File fi){
File[] fi01 = fi.listFiles();
//对文件夹内容信息的存储;

for(int k = 0;k < fi01.length; k++ ){
if(fi01[k].isDirectory()){
//判断是否还有子文件夹。如果有继续;
Rem(fi01[k]);
}
else{ //如果没有子文件夹则删除文件;
fi01[k].delete();
}
//此时文件及文件夹被删空,所以删除最后一个父文件夹;
fi.delete();
}

}

}

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: