对文件中的数据排序 java,如何使用Java对文本文件中的记录进行排序?

Some amendment of the data in txt file.

I have tried the suggested code but Im not successfully write it again in the txt file with this format.I've tried the collection.sort but it write the data in long line.

My txt file contain these data:

Monday

Jessica Run 20mins

Alba Walk 20mins

Amy Jogging 40mins

Bobby Run 10mins

Tuesday

Mess Run 20mins

Alba Walk 20mins

Christy Jogging 40mins

Bobby Run 10mins

How can I sort those data in ascending order and store it again in txt file after sorting?

Monday

Alba Walk 20mins

Amy Jogging 40mins

Bobby Run 10mins

Jessica Run 20mins

Tuesday

Alba Walk 20mins

Bobby Run 10 mins

Christy Jogging 40mins

Mess Run 20mins

Jessica Run 20mins

解决方案

Here's something I came up with:

import java.io.*;

import java.util.*;

public class Sort {

public static void main(String[] args) throws Exception {

BufferedReader reader = new BufferedReader(new FileReader("fileToRead"));

Map map=new TreeMap();

String line="";

while((line=reader.readLine())!=null){

map.put(getField(line),line);

}

reader.close();

FileWriter writer = new FileWriter("fileToWrite");

for(String val : map.values()){

writer.write(val);

writer.write('\n');

}

writer.close();

}

private static String getField(String line) {

return line.split(" ")[0];//extract value you want to sort on

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值