8.26~9.1 每周总结

本周学习的重点放在Java文件的操作之上。

学习情况如下:

在指定的位置创建一个文件,并在其中创建一个txt文件,并输出语句判断是否创建成功。

package file文件类操作;

import java.io.File;
import java.io.IOException;

public class Demo1 {
    
    public static void main(String[] args) throws IOException {  //抛出异常
            
        File file=new File("d://java创建的目录");
        boolean b=  file.mkdir(); //创建虚拟目录
        if(b) {
            System.out.println("目录创建成功!");
            file=new File("d://java创建的目录//java创建的文件.txt");
            boolean b2=file.createNewFile();
            if(b2) {
                System.out.println("文件创建成功!");
            }
            else {
                System.out.println("文件创建失败!");
            }
        }else {
            System.out.println("目录创建失败!");
        }
    }

}

删除操作:

必须先删除文件里面的东西,然后再删除文件本身,如果文件里边由东西,就无法进行删除操作了。删除操作只能对空文件进行。

package file文件类操作;

import java.io.File;
import java.io.IOException;

public class Demo2 {
    
    public static void main(String[] args) throws IOException {
        File file=new File("d://java创建的目录//java创建的文件.txt");
        if(file.exists()) {  //假如文件存在
        boolean b=    file.delete(); //删除文件
        if(b) {
            System.out.println("删除文件成功");
        }else {
            System.out.println("删除文件失败");
        }
        }
        file=new File("d://java创建的目录");
        if(file.exists()) {
            file.delete(); //删除目录
            boolean b2=file.delete();
             if(b2) {
                 System.out.println("删除目录成功。。。");
             }else {
                 System.out.println("删除目录失败。");
             }
            }
    }
}

遍历目录:

将目录中的文件输出出来:

package file文件类操作;

import java.io.File;

public class Demo3 {
    
    public static void main(String[] args) {
        File file=new File("D:\\c语言\\c语言资料");
        File files[]=file.listFiles(); //遍历目录
        for(int i=0;i<files.length;i++) {
            System.out.println(files[i]);
        }
    }

}

执行操作结果如下:

文件的读写操作:

reader 为输出流 

writer 为输入流  

每次创建新的输入输出流之后必须要由相应的关闭操作。

文件的两种读取方式:

1.
//一次性全部读取完毕并输出出来
package file文件类操作2;

import java.io.File;
import java.io.FileReader;
import java.io.Reader;

public class 文件操作读写 {
    
    public static void main(String[] args) throws Exception {
        File file=new File("D://cxy.txt");
        Reader reader=new FileReader(file);
        char c[]=new char [1024];  //字符数组
        int len=reader.read(c);
        reader.close();  //关闭输入流
        System.out.println("具体内容:"+new String(c,0,len));
    }

}
2.
//将文件中的资料逐个读取并输出
package file文件类操作2;

import java.io.File;
import java.io.FileReader;
import java.io.Reader;

public class 文件操作读写2 {
    
    
    public static void main(String[] args) throws Exception {
        File file=new File("D://cxy.txt");
        Reader reader=new FileReader(file);
        char c[]=new char [1024];  //字符数组
        int temp=0;
        int len=0;
        while((temp=reader.read())!=-1) {   //一个一个读取
            c[len++]=(char) temp;
            
        }
        reader.close();  //关闭输入流
        System.out.println("具体内容:"+new String(c,0,len));

}
}

文件的覆盖操作:

将文件原来的数据全部覆盖,重新输入数据

package file文件类操作2;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;

public class Demo3 {

    public static void main(String[] args) throws Exception {
        File file=new File("D://百度网盘//cxy.txt");
        OutputStream out=new FileOutputStream(file);
        String  str="我命由我不由天,是魔是仙我说了算   小哪吒";  //覆盖方式
        byte b[]=str.getBytes();
        out.write(b);  //数组写入输出流
        out.close();   //关闭输出流
    } 
}

文件追加方式:

不覆盖之前的资料,在末尾添加新的资料

package file文件类操作2;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
/**
 * 文件追加
 * @author cuixingyu
 *
 */

public class Demo4 {
    
    public static void main(String[] args) throws Exception {
        File file=new File("D://百度网盘//cxy.txt");
        OutputStream out=new FileOutputStream(file,true);
        String  str="我命由我不由天,是魔是仙我说了算  4785";  //追加方式
        byte b[]=str.getBytes();
        out.write(b);  //数组写入输出流
        out.close();   //关闭输出流

}
}

猜你喜欢

转载自www.cnblogs.com/cxy0210/p/11441539.html