java从一个txt文件操作

Posted on 2017-09-16 16:08  举一个栗子  阅读(103)  评论(0)    收藏  举报

在txt文件中有数字开头的几行数据,读取并且按从小到大排序

package com.demo;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;

public class Test2 {

    public static void main(String[] args) {
        File file = new File("D://name2.txt");
        try {
            InputStream is = new FileInputStream(file);
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            String string = null;
            String[] strings = new String[100];
            int i = 0;
            while(true){
                string = br.readLine();
                if(string!=null){
                    strings[i] = string;
                    i++;
                    System.out.println(string.charAt(0));
                }else{
                    break;
                }
            }
            br.close();
            is.close();
            String temp=null;
            for(int m=0;m<strings.length-1;m++){
                for(int n=0;n<strings.length-1-m;n++){
                    if(strings[n+1]!=null){
                        if(strings[n].charAt(0)>strings[n+1].charAt(0)){
                            temp = strings[n];
                            strings[n]=strings[n+1];
                            strings[n+1]=temp;
                        }
                    }
                }
            }
            FileWriter fw = new FileWriter("D://name.txt",true);
            BufferedWriter bw = new BufferedWriter(fw);
            for(String str:strings){
                if(str!=null){
                    System.out.println(str);
                    bw.write(str);
                    bw.newLine();
                    bw.flush();
                    fw.flush();
                }
            }
            bw.close();
            fw.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

 

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3