在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(); } } }
浙公网安备 33010602011771号