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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lt3886930 中级黑马   /  2016-6-21 21:56  /  291 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

已知文件a.txt文件中的内容为“bcdeadferwplkou”,请编写程序读取该文件内容,
        并按照自然排序顺序后输出到b.txt文件中。即b.txt文件内容应为"abc......"这样的顺序
思路:
        1、先将a.txt文件内容读取出来并存到字符数组中
        2、用Arrays.sort(字符数组) 将这个字符数组排序
        3、将字符数组输出到b.txt文件中
*/

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

class ReadFileAndSortString {
        public static void main(String args[]) throws IOException
        {
                //封装数据源及目的地File
                    File a = new File("a.txt");
                    File b = new File("b.txt");
                //高效字符输入流得到数据源                    
                BufferedReader br = new BufferedReader(new FileReader(a));
                //高效字符输出流得到目的地
                BufferedWriter bw = new BufferedWriter(new FileWriter(b));
                String line =null;
                //循环读取文件
                while((line = br.readLine())!=null)
                {
                        //得到读取一行字符串的长度
                        int len = line.length();
                        char[] chrs = new char[len];
                        //转换成字符数组
                        chrs = line.toCharArray();
                        //通过Arrays的sort方法排序
                        Arrays.sort(chrs);
                        System.out.println("字符串:"+new String(chrs));
                        //写到文件中
                        bw.write(chrs);
                        bw.newLine();
                        //刷新缓冲区
                        bw.flush();
                }
                //关闭资源
                br.close();
                bw.close();
                System.out.println("复制成功");
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马