为了账号安全,请及时绑定邮箱和手机立即绑定

java 如何从文件中读到一行数据并且修改其中的值?

java 如何从文件中读到一行数据并且修改其中的值?

梦想程序猿 2016-04-12 08:41:04
例如张三2014333386李四2014222281我希望在不改变其他值的情况下 对第三行的86进行修改,修改成90,在文件中进行读写,该怎么解决?,希望大神回答下,给个代码。
查看完整描述

2 回答

?
Mark_Sir

TA贡献8条经验 获得超4个赞

你把每一行的数据分开放在容器中;通过判断目标内容在何方,更改对应的目标内容即可。

查看完整回答
反对 回复 2016-04-12
  • 梦想程序猿
    梦想程序猿
    可否给下参考代码。
  • Mark_Sir
    Mark_Sir
    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; /** * * @author {Mark Sir} * * 2016-4-12 */ public class Test { public static void main(String[] args) throws Exception { InputStream input = Test.class.getResourceAsStream("file.txt"); BufferedReader br = new BufferedReader(new InputStreamReader(input, "GBK")); File file = new File("D://output.txt"); if (file.exists()) { file.delete(); } BufferedWriter bos = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(file), "UTF-8")); String tmp = null; StringBuffer sb = new StringBuffer(); while ((tmp = br.readLine()) != null) { if (tmp.contains("86")) { // 更改 sb.append("96"); } else { sb.append(tmp); } sb.append(","); } System.out.println(sb.toString()); bos.write(sb.toString()); bos.close(); br.close(); input.close(); System.out.println("over"); } }// end
  • 梦想程序猿
    梦想程序猿
    非常感谢。
  • 2 回答
  • 1 关注
  • 4365 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信