【253天】我愛刷題系列(12)

叨叨兩句

  1. 知識的海洋裏,沒有地圖,你就會迷路,而腦圖就是這個地圖。

題25:文件讀寫去重排序

題目要求

  1. itcast.txt文件中存儲了多行數字(每行一個數字(0 - 9 ))
  2. 讀取每行的數字,將結果打印到控制檯。
  3. 將文件中讀取出的數字進行去重操做,將結果打印到控制檯。
  4. 將去重後的數字按照由小到大的方式進行排列,並將排列後的結果打印到控制檯。
  5. 將排序後的結果按行存儲,按行存儲,按行存儲(重要事情說三遍,須要換行)到itcast_copy.txt文件中。java

提示

邏輯在Demo類的main函數中實現;
例如itcast.txt中按行存儲了 9,2,5,2,6,5,4,9
打印的結果:函數

第一行--> 初始: 9 2 5 2 6 5 4 9 
 第二行--> 去重: 9 2 5 6 4 
 第三行--> 排序: 2 4 5 6 9
package com.heima_IO;

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

public class Demo1 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new FileReader(new File("itcast.txt")));
        BufferedWriter bw = new BufferedWriter(new FileWriter(new File("itcast_copy.txt")));
        String line;
        TreeSet<Integer> ts = new TreeSet<>();
        String startStr = "初始:";
        while((line = br.readLine()) != null) {
            ts.add(Integer.parseInt(line));
            startStr += line + " ";
        }
        startStr = startStr.trim();
        
        String distinctStr = "去重: ";
        String sortStr = "排序: ";

        for(int i : ts) {
            distinctStr += i + " ";
            sortStr += i + " ";
            bw.write("" + i);
            bw.newLine();
        }
        
        br.close();
        bw.close();
        
        System.out.println(startStr);
        System.out.println(distinctStr);
        System.out.println(sortStr);
        
    }
    
            
}
相關文章
相關標籤/搜索