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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wjj410830911 中级黑马   /  2013-11-13 23:44  /  1224 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. public class 课堂联机
  2. {

  3.         /**
  4.          * @param args
  5.          * @throws IOException
  6.          */
  7.         public static void main(String[] args) throws IOException
  8.         {
  9.                 Demo2();
  10.         }
  11.         private static void Demo2() throws FileNotFoundException, IOException {
  12.                 BufferedReader br =
  13.                                 new BufferedReader(new FileReader("day22笔记.txt"));
  14.                 BufferedWriter bw =
  15.                                 new BufferedWriter(new FileWriter("times.txt"));
  16.                 Map<Character, Integer> map = new TreeMap<>();
  17.                 int ch;
  18.                 while((ch = br.read())!= -1)
  19.                 {
  20.                         char c = (char) ch;
  21.                         map.put(c, map.containsKey(c) ? map.get(c) + 1: 1 );
  22.                 }
  23.                 for (Character c : map.keySet())
  24.                 {
  25.                         switch (c) {
  26.                         case '\t':
  27.                                 System.out.println("\\t" + " = " + map.get(c));
  28.                                 break;
  29.                         case '\r':
  30.                                 System.out.println("\\r" + " = " + map.get(c));
  31.                                 break;
  32.                         case '\n':
  33.                                 System.out.println("\\n" + " = " + map.get(c));
  34.                                 break;
  35.                         case ' ':
  36.                                 System.out.println("空格" + " = " + map.get(c));
  37.                                 break;
  38.                         default:
  39.                                 System.out.println(c + " = " + map.get(c));
  40.                         }
  41.                 }
  42.         }
复制代码
这个是我在课上 一起写的代码   读入一个文本  将文本里的每个字出现了几次 打印出来
如“我 = 31”“代 = 14”“, = 45”等   
但如何将这些打印出来的信息 写入我创建的文本中啊?

评分

参与人数 1技术分 +1 收起 理由
黄炳期 + 1

查看全部评分

6 个回复

倒序浏览
本帖最后由 起猿 于 2013-11-14 00:02 编辑

我就不写代码了,写了你就容易形成固定思维,可以试探的学会分析
现在你已经把读入的数据写入了Map集合,那么接下来就是怎么写入文件了
已知,写入文件有writer(String str)方法,那么你就可以把map集合内的元素遍历出来,转为字符串。
然后通过此方法,写入到文档。

记得close()关闭流哈
回复 使用道具 举报
起猿 发表于 2013-11-14 00:00
我就不写代码了,写了你就容易形成固定思维,可以试探的学会分析
现在你已经把读入的数据写入了Map集合,那 ...

这是啥情况,出来这么多乱七八糟的东西
回复 使用道具 举报
起猿 发表于 2013-11-14 00:00
我就不写代码了,写了你就容易形成固定思维,可以试探的学会分析
现在你已经把读入的数据写入了Map集合,那 ...

好了,原来关键字不能复制
回复 使用道具 举报
起猿 发表于 2013-11-14 00:01
这是啥情况,出来这么多乱七八糟的东西
  1. //什么意思 是指这样吗?
  2. bw.writer("ccc.txt");
  3. bw.close;
  4. //就行了吗?
复制代码
回复 使用道具 举报

从你的程序看,你得到了{我 = 31”“代 = 14”“, = 45}这样的一个集合。而集合是不能直接写入指定文件的。所以你要将它转换成可以写入文件的字符流来写入,在write(String str)方法里,可以写入字符串。
所以你只要把你集合内的元素,按照你想要的方式变成字符串,然后通过这个方法写入文件就可以了。你都学到IO了,就不用我说咋把集合元素变成字符串了吧。嘿嘿
回复 使用道具 举报
帖子已分类
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马