Java文件读写

1.知识点

  • 读文件
  • 写文件
  • 释放文件资源
  • 如何优雅的遍历
  • finally的用法

2.代码

  • 功能代码
public class FileOperation {
    
    private String filepath = null;
    private StringBuilder sb = new StringBuilder();
    
    public FileOperation(String filepath) {
        this.filepath = filepath;
    }
    
    public void readFile() {
        File f = new File(filepath);
        FileReader fr = null;
        BufferedReader br = null;
        int num = 0;
        try {
            fr = new FileReader(f);
            br = new BufferedReader(fr);
            while(true) {
                String line = br.readLine();
                if(line == null) {
                    break;
                }
                System.out.println(line);
                num = num + 1;
                sb.append("line num ")
                .append(String.valueOf(num))
                .append(": ")
                .append(line)
                .append("\n");
            }
            
        }
        catch(IOException e) {
            e.printStackTrace();
        }
        finally {
            closeReader(br);
            closeReader(fr);    
        }
        
    }
    
    private void closeReader(Reader reader) {
        if(reader != null) {
            try {
                reader.close();
            }
            catch(IOException e) {
                e.printStackTrace();
            }
        }
    }
    
    public void writeFile() {
        File f = new File(filepath);
        FileWriter fw = null;
        BufferedWriter bw = null;
        try {
            fw = new FileWriter(f);
            bw = new BufferedWriter(fw);
            bw.write(sb.toString());
        }
        catch(IOException e) {
            e.printStackTrace();
        }
        finally {
            closeWriter(bw);
            closeWriter(fw);    
        }
    }
    
    private void closeWriter(Writer writer) {
        if(writer != null) {
            try {
                writer.close();
            }
            catch(IOException e) {
                e.printStackTrace();
            }
        }
    }
    
}
  • 测试代码
    public static void main(String[] args) {
        FileOperation fileop = new FileOperation("d:/hello.txt");
        fileop.readFile();
        fileop.writeFile();
    }

3.参考来源

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,110评论 18 399
  • import java.io.BufferedInputStream;import java.io.File;im...
    霙愔阅读 3,401评论 8 1
  • (一)Java部分 1、列举出JAVA中6个比较常用的包【天威诚信面试题】 【参考答案】 java.lang;ja...
    独云阅读 11,942评论 0 62
  • 王俊凯,终于终于盼到你十八岁了啊。 一路也是陪着走,看着辛苦看着进步也看着收获,一步步追随过来,怀着的是虔诚的心和...
    昔昔嵩峦_阅读 2,144评论 0 0
  • 有些岁月还留在记忆的沉船上 如果爱情抛锚了 就别去打捞那艘沉船 不要太在意沉船的腐朽与孤独 那只不过是一个形式 像...
    江城妖怪阅读 1,358评论 2 4