/** 案例:诸葛亮出师表文本排序
  * 1.使用HashMap集合,k存储每行文本序,v存储文本
  * 2.创建字符缓冲输入流,构造方法中绑定字符输入流
  * 3.使用字符串缓冲输入流中的方法readLine逐行读取文本
  * 4.对读取到的文本进行切割,获取行中的序号和文本内容
  * 5.把切割好的序号和文本的内容存储到HashMap集合中
  * 6.建字符缓冲输出流,构造方法中绑定字符输出流
  * 7.遍历HashMap集合获取键值对
  * 8.把每一个键值对拼接为一个文本行
  * 9.把拼接好的文本,使用字符缓冲输出流中的writer方法写入到文件中
  *创
  *
  */
  public static void main(String[] args) throws IOException {
      //1.使用HashMap集合,k存储每行文本序,v存储文本
      HashMap<String, String> hsm = new HashMap<>();
      //2.创建字符缓冲输入流,构造方法中绑定字符输入流
      BufferedReader br = new BufferedReader(new FileReader("F:\\FileTest\\出师表.txt"));
      //3.使用字符串缓冲输入流中的方法readLine逐行读取文本
      String len = null;
      while ((len = br.readLine())!=null){
          //4.对读取到的文本进行切割,获取行中的序号和文本内容
          String[] sp = len.split("\\.");
          //5.把切割好的序号和文本的内容存储到HashMap集合中
          hsm.put(sp[0],sp[1]);
      }
      //6.遍历HashMap集合获取键值对
      Set<String> strings = hsm.keySet();
      //7.创建字符缓冲输出流,构造方法中绑定字符输出流
      BufferedWriter bw = new BufferedWriter(new FileWriter("F:\\FileTest\\出师表.txt"));
      for (String string : strings) {
          String s = hsm.get(string);
          bw.write(string+"."+s);
          bw.newLine();
      }
      bw.close();
      br.close();
  }
  }

java_缓冲流(文件内容排序)的更多相关文章

  1. java_缓冲流(字符输出输入流)

    /** java.io.BufferedReader extends Reader * * 构造方法: * BufferedReader(Reader in):创建一个使用默认大小输入缓冲区的缓冲字符 ...

  2. java_缓冲流(字符输出流)

    /** 字符缓冲流: * java.io.BufferedWriter extends writer * BufferedWriter:字符缓冲输出流: * * 构造方法: * BufferedWri ...

  3. java_缓冲流(字节输入流)

    /** * java.iko.BufferedInputStream extends InputStream * BufferedInputStream:字节缓冲输入流 * 构造方法: * Buffe ...

  4. java_缓冲流(字节输出流)

    缓冲流分为: 字节缓冲流:BufferedIntputSream(字节缓冲输出流),BufferdOutputStream(字节缓冲输入流) 字符缓冲流:BufferedReader(字符输入缓冲流) ...

  5. IO流,字节流复制文件,字符流+缓冲复制文件

    JAVAIO如果按流向分:输入流和输出流两种 输入流的基类:InputStream   Reader 输出流的基类:OutputStream   Writer 如果按数据单元划分:字节流和字符流 字节 ...

  6. python 获取流文件 大小

    buffer_file_content=u"流文件内容" file_size = len(buffer_file_content)/ #kb

  7. IO流-文件夹的拷贝

    文件夹的拷贝操作 要求: 完成文件夹的拷贝,包括子目录的拷贝和所有文件的拷贝 分析: 首先,得在目标目录下创建一个与源文件夹名称相同的文件夹 遍历源文件夹中的所有文件对象,判断子文件是目录还是文件 如 ...

  8. Shell—文件内容操作

    读取文件的每一行内容并输出 #!/bin/bash # 方法1 while read line do echo $line done < a.txt # 方法2 cat a.txt | whil ...

  9. Linux学习 - 修改、查询文件内容

    一.显示文件内容 cat  [-n]  [文件名] 正向显示 -n 显示行号 tac  [文件名] 反向显示 more  [文件名] 可实现分页显示 (空格)或(f) 翻页 (Enter) 换行 (q ...

随机推荐

  1. 开放应用模型(OAM):全球首个云原生应用标准定义与架构模型

    Kubernetes 项目作为容器编排领域的事实标准, 成功推动了诸如阿里云 Kubernetes (ACK)等云原生服务的迅速增长.但同时我们也关注到,Kubernetes 的核心 API 资源比如 ...

  2. hdu多校第六场1008 (hdu6641)TDL 暴力

    题意: 设f(n,m)为比n大的第m个和n互质的数,给定一个k=(f(n,m)-n)xor n和m,求最小的n 题解: 对于给定的m而言,一个k周围合法的n分布的很密,因此在k的邻域暴力搜索即可. # ...

  3. Python-爬虫-requests库用语post登录

    requests库很强大,支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的URL和POST数据自动编码. 可以发送无参数的get请求, ...

  4. opencv-图像形态学之开运算、闭运算、形态学梯度、顶帽、黑帽合辑

    转自:https://blog.csdn.net/poem_qianmo/article/details/24599073 1.1 开运算(Opening Operation) 开运算(Opening ...

  5. ionic:安装

    ylbtech-ionic:安装 1.返回顶部 1. ionic 安装 本站实例采用了ionic v1.3.2 版本,使用的 CDN 库地址: <link href="https:// ...

  6. SSM 整合 Shiro

    1. 导包 <!-- spring --> <dependency> <groupId>org.springframework</groupId> &l ...

  7. LightOJ 1245 - Harmonic Number (II)

    题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1245 题意:仿照上面那题他想求这么个公式的数.但是递归太慢啦.让你找公式咯. ...

  8. C#& Screen 类&(&多&屏&幕&开&发)

    原文:C#& Screen 类&(&多&屏&幕&开&发) Screen 类 下面的代码示例演示如何使用 Screen 类的各种方法和属性. 该示 ...

  9. JDBC_Template(简化代码)

    /** * @Description: TODO(这里用一句话描述这个类的作用) * @Author aikang * @Date 2019/8/27 11:03 */ /* Spring JDBC: ...

  10. 在MRC模式下使用SDWebImage

    在MRC模式下使用SDWebImage (1)在Target->Build Phases->Compile Sources中,给所有的SDWebImage添加-fobjc-arc (2)添 ...