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

---------------------- 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培训、期待与您交流! ----------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值