io流读写文件(文件内容修改)

来源:互联网 发布:刻录机软件 编辑:程序博客网 时间:2024/06/05 12:15

package cn.sos.psasps;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Random {

public static void main(String[] args) {    String filePath = "D:\\psasp\\LF.L2";    writer(filePath,heel(filePath));    //heel(filePath);}

/**
* 读取文件
* @param filePath
*/
public static List heel(String filePath){
BufferedReader br = null;

    String line = null;    List<String>list = new ArrayList<>();    StringBuffer buf = new StringBuffer();    try {        //根据文件路径创建缓冲输入流        br = new BufferedReader(new FileReader(filePath));        //循环读取文件的每一行,对需要进行修改的行进行修改,放入缓存对象中        while ((line = br.readLine()) != null) {            //此处根据实际需要修改某些行的内容            buf.append(" ").append(" ").append((int)(Math.random()*2)).append(line.substring(3));            //使用list记录所有的数据            list.add(buf.toString());            System.out.println(buf.toString());            //清空可变字符串,重新记录数据            buf.delete(0, buf.length());        }    } catch (Exception e) {        e.printStackTrace();    }finally{        try {            br.close();        } catch (IOException e) {            e.printStackTrace();        }    }    return list;}

/**
* 将文件回写到文件中
*/
public static void writer(String filePath,List content){
BufferedWriter bw = null;
try {
//根据文件路径创建缓冲输出流
bw = new BufferedWriter(new FileWriter(filePath));
//将内容写入到文件中
for (int i = 0; i < content.size(); i++) {
bw.write(content.get(i));
bw.newLine();
}

    } catch (Exception e) {        e.printStackTrace();    }finally{        try {            bw.close();        } catch (IOException e) {            e.printStackTrace();        }    }}

}
注:此代码是修改文件中的第一列随机0和1

原创粉丝点击