• 字符流实现文本和集合的转换


    1.集合转文件

    package day21_io.test.进阶操作;
    
    import java.io.BufferedWriter;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.ArrayList;
    
    /**
     * 需求:把ArrayList集合中的字符串数据存储到文本文件 
     * 
     *      分析: 通过题目的意思我们可以知道如下的一些内容,
     * 
     *         ArrayList集合里存储的是字符串。 
     *         遍历ArrayList集合,    把数据获取到。
     *         然后存储到文本文件中。 文本文件说明使用字符流。
     * 
     *     数据源: ArrayList<String> 
     *        -- 遍历得到每一个字符串数据 目的地: a.txt 
     *        -- FileWriter -- * BufferedWriter
     * 
     * @author chenwen
     *
     */
    public class Test1 {
    
        public static void main(String[] args) throws IOException {
            // 封装数据源
            ArrayList<String> array = new ArrayList<String>();
            array.add("hello");
            array.add("world");
            array.add("IO");
            // 封装目的地
            BufferedWriter bw = new BufferedWriter(new FileWriter("a.txt"));
            for (String s : array) {
                bw.write(s);
                bw.newLine();
                bw.flush();
            }
            bw.close();
        }
    
    }

    2.文件转集合

    package day21_io.test.进阶操作;
    
    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.ArrayList;
    
    /**
      * 需求:从文本文件中读取数据(每一行为一个字符串数据)到集合中,并遍历集合
     * 
     * 分析:
     *         通过题目的意思我们可以知道如下的一些内容,
     *             数据源是一个文本文件。
     *             目的地是一个集合。
     *             而且元素是字符串。
     * 
     * 数据源:
     *         b.txt -- FileReader -- BufferedReader
     * 目的地:
     *         ArrayList<String>
     * @author chenwen
     *
     */
    public class Test2 {
    
        public static void main(String[] args) throws IOException {
    //        封装数据源
            BufferedReader br =new BufferedReader(new FileReader("a.txt"));
    //        封装目的地
            ArrayList<String> array = new ArrayList<String>(); 
            String line =null;
            while((line=br.readLine())!=null) {
                array.add(line);
            }
            br.close();
            for (String string : array) {
                System.out.println(string);
            }
            
        }
    
    }
  • 相关阅读:
    选择最佳服务台方案的7个考量
    使用OpManager轻松进行Windows网络监控
    统一终端管理(UEM)有哪些关键的安全功能
    javascript的声明变量var,let,const的区别
    Vue 在过滤器filter中调用methods中的方法
    第十六章:过滤器的奥秘
    1970年1月1日(00:00:00 GMT)Unix 时间戳(Unix Timestamp)
    让网页中的JavaScript代码自动执行的三种方法
    限制input type=“file“ 文件上传类型
    对v-html的文字做超出显示省略号
  • 原文地址:https://www.cnblogs.com/csslcww/p/9179579.html
Copyright © 2020-2023  润新知