zoukankan      html  css  js  c++  java
  • 如何利用输入输出流往文件中不断添加内容

    这里简单的实现了对文件添加内容时不改变原来的内容的情况下,在原内容基础上进行添加内容:

    思路:先输入再输出,用变量去接收文件的原内容

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.Scanner;
    
    public class Test04 {
    
        public static void main(String[] args) {
            Scanner sc=new Scanner(System.in);
            String str=sc.nextLine();                      //输入内容
            try {
                File file =new File("d:/test.txt");                 //创建文件
                if(!file.exists()){
                    file.createNewFile();
                }
                FileInputStream in=new FileInputStream("d:/test.txt");         //输入流
                byte[] b=new byte[1024];                                       //byte数组——容器
                int i;                                                         //长度
                StringBuilder wenzi=new StringBuilder();                                               //字符串变量接收文件内容
                while((i=in.read(b))>0){                    //循环读取
                    wenzi.append(new String(b,0,i));                //获得文件中的内容
                }
                in.close();
                wenzi.append("
    "+str);                     //创建新的内容=之前的内容+新输入的内容
                FileOutputStream out =new FileOutputStream("d:/test.txt");              //输出流
                byte[] newb=wenzi.toString().getBytes();
                out.write(newb);
                out.close();            
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
    }

     java提供了追加往文件中写入内容的方法:

    public class Zhuijiaxieru {
    
        public static void main(String[] args) {
            // TODO 自动生成的方法存根
            String filename="d:/test.txt";
            try {
                FileOutputStream out =new FileOutputStream(filename,true);
                String str ="
    用新的构造方法追加内容";
                out.write(str.getBytes());
                out.close();
            } catch (Exception e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            }
            
    
        }
    
    }
  • 相关阅读:
    变量的创建和初始化
    HDU 1114 Piggy-Bank (dp)
    HDU 1421 搬寝室 (dp)
    HDU 2059 龟兔赛跑 (dp)
    HDU 2571 命运 (dp)
    HDU 1574 RP问题 (dp)
    HDU 2577 How to Type (字符串处理)
    HDU 1422 重温世界杯 (dp)
    HDU 2191 珍惜现在,感恩生活 (dp)
    HH实习 acm算法部 1689
  • 原文地址:https://www.cnblogs.com/jingzhenhua/p/5910758.html
Copyright © 2011-2022 走看看