A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© clz2431 中级黑马   /  2015-12-16 22:47  /  705 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

已知一个文本文件,需求,把其中的文本进行反转(第一行和最后一行换,第二行和倒数第二行换)
public class Demo4DaoXu {
        public static void main(String[] args) throws IOException {
                // 创建输入流对象
                BufferedReader br = new BufferedReader(new FileReader("zzz.txt"));
                // 创建集合对象
                ArrayList<String> list = new ArrayList<>();
                // 将读到的数据存储在集合中
                String line;
                while ((line = br.readLine()) != null) {
                        list.add(line);
                }
                br.close();
                // 倒叙遍历集合,将数据写到文件上
                BufferedWriter bw = new BufferedWriter(new FileWriter("revzzz.txt"));
                for (int i = list.size() - 1; i >= 0; i--) {
                        bw.write(list.get(i));
                        bw.newLine();
                }
                // 关流
                bw.close();
                System.out.println("wanchengle");
        }
}



获取一个文本上每个字符出现的次数,将结果写在times.txt
public class Chuxiandecishu {
        public static void main(String[] args) throws IOException {
                // 创建输入流对象
                BufferedReader br = new BufferedReader(new FileReader("zzz.txt"));
                // 创建双列集合对象
                TreeMap<Character, Integer> tm = new TreeMap<>();
                // 3,将读到的字符存储在双列集合中,存储的时候要做判断,如果不包含这个键,就将键和1存储,如果包含这个键,就将该键和值加1存储
                int ch;
                while ((ch = br.read()) != -1) {
                        char c = (char) ch;
                        /*if (!tm.containsKey(c)) {
                         *  }else{
                         *  tm.put(c, tm.get(c)+1); }
                                 */
                                tm.put(c, !tm.containsKey(c) ? 1 : tm.get(c) + 1);
                       
                }
                // 关闭输入流
                br.close();
                // 创建输出流对象
                BufferedWriter bw = new BufferedWriter(new FileWriter("times.txt"));
                // 遍历集合将集合中内容写到times.txt文件中
                for (Character key : tm.keySet()) {
                        switch (key) {
                        case '\t':
                                bw.write("\\t" + "=" + tm.get(key));
                                break;
                        case '\n':
                                bw.write("\\n" + "=" + tm.get(key));
                                break;
                        case '\r':
                                bw.write("\\r" + "=" + tm.get(key));
                                break;
                        default:
                                bw.write(key + "=" + tm.get(key));
                                break;
                        }
                        bw.newLine();
                }
                bw.close();
                System.out.println("wanshile");

        }

}


               

1 个回复

倒序浏览
辛苦
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马