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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hlh 中级黑马   /  2016-5-12 22:50  /  319 人查看  /  2 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

package 字符流;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.TreeMap;

public class Demo4 {
/**
* 获取一个文本上每个字符出现的次数,将结果写在times.txt上
* 1.创建输入流,关联一个文件夹或文件
* 2.创建一个map集合存储字符和出现的次数
* 3.读取文本,将文本中的字符存入集合
* 4建立一个字符输出流
*
* @throws IOException
*
*/
        public static void main(String[] args) throws IOException {
                 BufferedReader br=new BufferedReader(new FileReader("aaa.txt") );
               //  从字符输入流中读取文本
                 TreeMap<Character, Integer> tm=new TreeMap<>();
                 int line;
                 while((line=br.read())!=-1) {
                         char ch=(char)line;
                              if(tm.containsKey(ch)) {
                                      tm.put(ch,tm.get(ch)+1);
                              }else{
                                      tm.put(ch,1);
                              }
                 }
               br.close();
               BufferedWriter bw=new BufferedWriter(new FileWriter("times.txt"));
          for (Character ch : tm.keySet()) {
                        switch (ch) {
                        case '\n' :bw.write("\\n"+"="+tm.get(ch));
                                break;
                        case '\r':bw.write("\\r"+"="+tm.get(ch));
                        break;
                        case '\t': bw.write("\\r"+"="+tm.get(ch));
                        break;
                        default:   bw.write(ch+"="+tm.get(ch));
                                break;
                        }
                }
          bw.close();


        }

}
字符串和字符怎么能同时用输出流写出去呢?大神们能给解释解释吗

2 个回复

倒序浏览
好长啊!不会
回复 使用道具 举报
这是什么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马