农村四月闲人少,勤学苦攻把名扬。这篇文章主要讲述Java读取txt文件,并且对其文件内容进行统计排序相关的知识,希望能为你提供帮助。
1、业务需求 : 根据使用量将下列数据进行排序 然后按照使用量的高低进行 数据展示
2、实现代码
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.function.BiConsumer;
/**
* Java读取txt文件,并且对其文件内容进行统计排序
* @author com
*
*/
public class ClassInfoSort { static String str = null;
static Map<
String, Double>
map1 = new HashMap<
String, Double>
();
// G
static Map<
String, Double>
map2 = new HashMap<
String, Double>
();
// M
static Map<
String, Double>
map3 = new HashMap<
String, Double>
();
// K
static Map<
String, Double>
map4 = new HashMap<
String, Double>
();
// 0 public static void main(String[] args) {
read();
output();
} public static void output() {
List<
Map.Entry<
String, Double>
>
list1 = sort(map1);
List<
Map.Entry<
String, Double>
>
list2 = sort(map2);
List<
Map.Entry<
String, Double>
>
list3 = sort(map3);
//List<
Map.Entry<
String, Double>
>
list4 = sort(map4);
for (Entry<
String,Double>
entry : list1) {
System.out.println(entry.getKey()+" "+entry.getValue()+" G");
}
for (Entry<
String,Double>
entry : list2) {
System.out.println(entry.getKey()+" "+entry.getValue()+" M");
}
for (int i=0;
i<
list3.size();
i++) {
System.out.println(list3.get(i).getKey()+" "+list3.get(i).getValue()+" K");
}
map4.forEach(new BiConsumer<
String, Double>
() {
@Override
public void accept(String t, Double u) {
System.out.println(t+" "+u+" B");
}
});
}
/**
* map以value值降序排序,返回list<
Map>
* @param map
* @return list
*/
public static List<
Map.Entry<
String, Double>
>
sort(Map<
String,Double>
map){
List<
Map.Entry<
String, Double>
>
list = new ArrayList<
Map.Entry<
String,Double>
>
(map.entrySet());
list.sort(new Comparator<
Map.Entry<
String, Double>
>
() {
@Override
public int compare(Entry<
String, Double>
o1, Entry<
String, Double>
o2) {
return o2.getValue().compareTo(o1.getValue());
}
});
return list;
} /**
* 读取文件,并筛选出user用户和对应的文件大小
*/
public static void read() {
File file = new File("作业1.txt");
FileInputStream fin = null;
BufferedReader bfr = null;
try {
fin = new FileInputStream(file);
bfr = new BufferedReader(new InputStreamReader(fin));
String str = null;
String key = null;
double value = https://www.songbingjia.com/android/0D;
int n, n1;
while ((str = bfr.readLine()) != null) {
if (str.startsWith("0")) { // 0的情况
n = str.indexOf("/user/") + 6;
key = str.substring(n);
value = https://www.songbingjia.com/android/0;
map4.put(key, value);
} else if (str.contains(" G")) { // G的情况
n = str.indexOf("/user/") + 6;
key = str.substring(n);
n1 = str.indexOf(" G");
value = https://www.songbingjia.com/android/Double.parseDouble(str.substring(0, n1));
map1.put(key, value);
} else if (str.contains(" M")) { // M的情况
n = str.indexOf("/user/") + 6;
key = str.substring(n);
n1 = str.indexOf(" M");
value = https://www.songbingjia.com/android/Double.parseDouble(str.substring(0, n1));
map2.put(key, value);
} else if (str.contains(" K")) { // K的情况
n = str.indexOf("/user/") + 6;
key = str.substring(n);
n1 = str.indexOf(" K");
value = https://www.songbingjia.com/android/Double.parseDouble(str.substring(0, n1));
map3.put(key, value);
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fin.close();
} catch (IOException e) {
e.printStackTrace();
}
} }}
3、效果截图
文章图片
4、附件文件
业务需求 : 根据使用量将下列数据进行排序 然后按照使用量的高低进行 数据展示
分组 -->
排序 -->
抽取数据 007 396.9 K -->
java实现
396.9 K/user/007
593.5 K/user/12_hl
0/user/1LB
0/user/96256
701.3 M/user/Amanda
611.3 M/user/ChenQingkang
712.6 M/user/ChenQingkang12
943.0 K/user/DAIhe
9.8 M/user/DAIhe199713
0/user/Enning
47.9 M/user/Kung15
5.0 G/user/LT
105/user/LZY
611.3 M/user/LiuChengcheng12
76.4 M/user/Ruler13
420.6 K/user/Rulue13
7.0 K/user/TZM11
673.7 M/user/WangYun12
0/user/XXXXX
610.6 M/user/YC
12.2 M/user/YuanShiXiong13
31.2 M/user/anonymous
230/user/avro
2.8 G/user/bailina13
105.5 M/user/baoyu13
1.3 G/user/begin
618.7 M/user/caoenning15
673.5 M/user/caoguangzhou13
730.6 M/user/caohuyue13
613/user/caomingyang
4.5 G/user/caomingyang12
740.4 M/user/caowenhao13
0/user/caozhuang
996.1 M/user/caozhuang12
610.6 M/user/changjinfang15
0/user/chaoran2
4.7 G/user/chenbojie09
9.7 M/user/chengshaoqi10
1.4 G/user/chengzhen11
610.6 M/user/chenjianfei
623.7 M/user/chenjianfei13
3.6 M/user/chenjinbiao
1.6 K/user/chenjinbiao10
611.3 M/user/chenpeng15
195/user/chenqingakng12
3.5 G/user/chenqingkang12
3.5 G/user/chenshengjian13
412/user/chentao
611.3 M/user/chentao15
3.1 G/user/chenteng09
0/user/chenxuemeng09
3.6 G/user/chenyanzhang10
3.1 G/user/chihongfeng
0/user/chnegshaoqi10
0/user/daishirong
735.6 M/user/daishirong13
4.3 G/user/dangwenchao12
0/user/datafile
0/user/demo
0/user/dengmingfeng12
0/user/dengzongxin
4.1 G/user/dengzongxin13
965.6 M/user/dmf
1.3 G/user/donghao
420.7 K/user/donghao09
170.3 K/user/donghao10
1.6 G/user/dongwentao15
2.6 G/user/doudou
24/user/doupeng
326.9 M/user/doupeng08
8.7 K/user/dr.who
6.2 K/user/drz
609/user/dsr
8.7 M/user/duanheng
3.3 G/user/duanheng11
2.1 G/user/duruize08
0/user/duyang15
3.5 G/user/duzhuoyan
437.0 K/user/duzhuoyan10
310/user/dwt
88.2 M/user/etlproject11
0/user/examples
0/user/fangkun06
421.0 K/user/feng11
2.2 G/user/fengchangxiong
0/user/fengniu
171.8 K/user/fengyudong12
665.8 M/user/fengyudong13
2.7 G/user/frank
1.7 G/user/frank12
1.9 G/user/fuyongquan
0/user/fuyongquan11
19/user/gaga.txt
1.8 G/user/gaochuangxin
426.8 K/user/gaochuangxin09
226.4 M/user/gaodan13
333/user/gaopeng
1.3 G/user/gaopeng08
3.2 G/user/gaoyongzhong10
2.4 K/user/gongtao
0/user/gongtao08
420.6 K/user/gongtao09
135.3 M/user/group_10
615.4 M/user/guofengshuo13
481.5 M/user/guorui
1007.8 K/user/guorui11
0/user/guoshuaifu15
3.9 G/user/guoshuzhao15
1.7 G/user/guoying08
1.2 K/user/guozhuang10
1.3 G/user/gushuixa10
3.5 G/user/gushuxia10
428.6 K/user/gushuxia1010
409.7 M/user/h2o2
1.8 G/user/hadoop
24.9 G/user/hainiu
31.5 M/user/hainiu_report
0/user/hainiu_ypx
0/user/hainiureport
69/user/hajipingh12
443/user/hanzongqing10
2.9 G/user/haoluyang12
0/user/haoop
421.0 K/user/haowenxuan09
54/user/haozhenchao
3.1 G/user/haozhenchao09
0/user/hbase
0/user/hechaoyong
1.4 M/user/hehehe
418/user/hehuanwen
5.6 M/user/hehuanwen08
1.6 G/user/hejiping
1020.9 M/user/hejiping12
507.9 M/user/hejipint12
13.7 G/user/hekaifei15
611.3 M/user/hexiaodong15
1.8 G/user/heyong07
1.9 M/user/hezepei
144.4 K/user/hezhiwei
1.7 G/user/hezhiwei12
26.6 M/user/hhs
0/user/hianiu
2.8 G/user/hive
0/user/hive_r
0/user/hl
610.6 M/user/hl12
3.3 K/user/hly
78.2 K/user/hly12
0/user/hly12311
1.1 K/user/hnxywj11
93.9 M/user/houjun08
0/user/huahongxin
1.9 G/user/huahongxin09
614.5 M/user/huanglei15
2.3 G/user/huanglibao
1.6 G/user/huanglingyu11
692.6 M/user/huangshibo12
388/user/huangzhaohui
67.5 M/user/huangzhaohui09
325.3 K/user/huhongshun123
611.3 M/user/huhongshun12312
1.1 G/user/huzewen13
239/user/input_key
3.2 G/user/itlishuai
30.1 M/user/itls
0/user/jaiyujian07
36.1 M/user/jf
192/user/jiadelong
14.0 M/user/jiadelong10
0/user/jiakeyao
2.3 M/user/jiakeyao11
0/user/jiangliou
429.7 K/user/jiangliou09
60.5 M/user/jianglou09
89.6 M/user/jiangxin10
736.2 M/user/jiaofeng12
2.6 G/user/jiayujian
31.8 M/user/jiayujian07
71.3 K/user/jiayujianyujian07
1.6 G/user/jinfu
0/user/jinfu09
14.0 M/user/jinfu12
3.2 G/user/jingxin12
0/user/jinyanxi
0/user/jinyanxi10
884/user/jiping12
57/user/js_hn
610.6 M/user/kenan
647.7 M/user/kongfanxin15
611.4 M/user/kouxinyuan11
4.9 K/user/leelongbo11
669.8 M/user/leizhe13
699.2 M/user/leizijiao13
0/user/lenovo
610.6 M/user/liangsz123113
3.1 G/user/liangzhiyong09
611.4 M/user/liaosong15
0/user/liaoyisi
832.4 M/user/liaoyisi13
342.5 K/user/libo
171.8 K/user/lihong12
1.8 G/user/lijiarui08
3/user/lilongbo11
420.7 K/user/limeiling09
75.6 M/user/limin08
4.0 K/user/liming
3.3 G/user/liming12
2.7 G/user/linbin15
3.1 G/user/linjiawei09
1.3 G/user/linyuhong
614.3 M/user/linyuhong15
62.6 M/user/lipengfei10
19/user/lishengshi
1.3 G/user/lishuai
4.0 G/user/lishuai12
939.5 M/user/lishuai15
206.6 M/user/liubin13
1.8 G/user/liubo11
3.0 G/user/liubo15
1.1 K/user/liubowen
8.2 M/user/liubowen08
3.3 G/user/liuchao12
0/user/liuhao
2.8 G/user/liuhong12
610.6 M/user/liujianyang15
324.5 M/user/liuming
1016.4 M/user/liuming12
642.5 M/user/liumingyang15
49/user/liuniao
334.5 M/user/liuniao10
2.1 M/user/liunioa10
0/user/liupan
3.4 G/user/liupan10
468.1 M/user/liuqaing08
421.3 K/user/liuqiang08
1023.1 M/user/liushaopeng11
525.5 K/user/liushuhe11
0/user/liuxiaonan15
32.4 M/user/liuyuhuan
611.3 M/user/liuyuhuan13
661.2 M/user/liuzezhuo12
420.6 K/user/liuzhengxun
31.7 M/user/liuzhengxun13
420.6 K/user/liuzhenjiang09
322/user/liuzhipeng
2.2 M/user/liuzhipeng09
1.2 G/user/liuzhu15
290.7 M/user/lixiaoyao13
36.2 K/user/liyao
647.1 M/user/liyuan
672.1 M/user/liyuan12
468.8 M/user/lizhifeng10
3.0 G/user/liziquan12
24/user/ljiaofeng
0/user/llblilnogbo
0/user/llblilnogbo11
8.7 G/user/llblilongbo11
2.1 G/user/lp
1.3 G/user/lpf10
0/user/lsh
0/user/lsh11
0/user/lss12
0/user/lufeifei10
870/user/luo
5.1 G/user/luohantao08
611.3 M/user/luotao15
425.2 K/user/luozhenjiu08
25.8 K/user/luxihao
0/user/luxihap08
3.5 G/user/lvsicong10
841.3 K/user/lxy
4.5 M/user/lyn
468.3 M/user/ma11
1.6 G/user/majixian09
10.3 M/user/majixian10
586/user/mapreduce
32/user/mayaohong10
0/user/mayucheng
50.4 M/user/mayucheng10
30/user/mazhaolaing08
121.2 M/user/mazhaoliang08
2.2 G/user/mazhenxin10
0/user/mengxianbao
68.0 M/user/mengxianbao08
198.8 M/user/mitaotao
30.7 M/user/mitaotao10
1.3 G/user/mofan10
0/user/mr
0/user/mr_input
0/user/my
5.0 K/user/nan
1.2 G/user/nandingding12
6.6 K/user/nini
48.6 M/user/nini11
13.8 K/user/ninifairy
63.2 M/user/output
21.8 G/user/panniu
8.7 G/user/panyifan09
98/user/pawangpeng12
3.5 M/user/pd
320.8 M/user/pd15
0/user/pd15_out
5.8 G/user/pengdong15
1.2 G/user/penghui12
611.3 M/user/ph
1.5 G/user/qcy96101111
4.0 K/user/qiao
5.7 G/user/qiaoChunYu
0/user/qiaoqiao
1.9 M/user/qiaoshengxin09
718.7 M/user/qiaoshiyu12
21.1 G/user/qingniu
938.1 M/user/qiuji13
3.1 G/user/qiyi
3.1 G/user/quxin09
115.1 M/user/renchao
3.6 G/user/renxiaoting09
0/user/retail
0/user/root
0/user/ruler
3.7 K/user/ruler13
0/user/s1
1.1 G/user/shangmingxin09
4.8 G/user/shenbo12
416.3 M/user/shenpeng13
1.8 K/user/shichaoran
1.5 K/user/shichaoran.db
31.2 M/user/shichaoran08
0/user/shixiaolaing
0/user/shixiaoliang
11.2 M/user/shixiaoliang10
0/user/showtime
108/user/shu
4.1 G/user/shuyang
1.6 G/user/siniu
0/user/songifen09
0/user/songjia
3.3 G/user/songkang12
0/user/songlifeng009
1.4 G/user/songlifeng09
0/user/su
3.4 G/user/sunchengxun
16.0 K/user/sunchengxun11
1.2 G/user/suniu
1.9 G/user/sunsong08
20.6 M/user/suntiancheng10
20.2 K/user/sunxiuhua12
155.2 M/user/superl
704.9 M/user/suwenju12
3.2 G/user/suyuan09
356.0 M/user/suyuex12
3.8 G/user/swj
78/user/t1
0/user/t8
8.0 M/user/tengfei11
0/user/test1
3.0 G/user/test2
47.0 M/user/tianguoyan
588.5 K/user/tianguoyan09
0/user/tianxia
514.4 M/user/tianxiaoyu08
3.0 G/user/tongxilun10
0/user/user
2.7 G/user/vince
0/user/wang
420.7 K/user/wanganlei11
2.6 G/user/wangbin12
4.3 G/user/wangbowen12
707.5 M/user/wanghan15
328.5 M/user/wanghao10
1.3 G/user/wanghaowei10
649.7 M/user/wanghongyang12
366.4 M/user/wangjian11
62.7 M/user/wangjingqin08
583/user/wangjunteng09
3.8 G/user/wangjunwei12
20/user/wangkunyang
1.2 G/user/wangliumin11
420.6 K/user/wangliuming11
791.6 M/user/wanglongchao
3.7 G/user/wanglongchao12
8.2 G/user/wangming08
55.3 M/user/wangmingwei09
884.7 M/user/wangpeng12
0/user/wangqiang
3.6 G/user/wangqiang09
1.8 G/user/wangqinzheng
2.2 G/user/wangqinzheng10
1.7 G/user/wangruilin13
610.6 M/user/wangruiqiao15
575.2 M/user/wangshixing
310.5 M/user/wangshixing08
421.3 K/user/wangshizi
145.2 M/user/wangshizi08
2.6 M/user/wangshuaiang13
450.9 K/user/wangtongwei10
530/user/wangwei
90.1 M/user/wangwei10
0/user/wangxiaoyu
934/user/wangyanjie
2.8 G/user/wangyanjie12
482.2 K/user/wangyao
195.6 M/user/wangyao08
2.8 G/user/wangyu09
1.9 G/user/wangyue12
629.5 M/user/wangyun12
810.3 M/user/wangzhentao15
3.6 G/user/wangzuowei11
0/user/wanqh15
5.2 G/user/wanqiuhao15
0/user/wanyuan
621.0 M/user/wanyuan13
64.6 M/user/wcy
759.0 M/user/wcy12
644.1 M/user/weijiaxin12
392.4 M/user/weishucheng
657.0 M/user/weishucheng12
239/user/weiyixuan
700.6 M/user/weiyixuan12
630.8 M/user/wenluqi10
14/user/whw
347/user/wjq
3.1 G/user/wjt09
324.9 M/user/wlq
324.5 M/user/wtw
673.2 M/user/wubicheng15
3.1 G/user/wutenghui09
358.7 K/user/wuyue
896.2 M/user/wuyue13
3.6 G/user/wuzhaohua13
0/user/wuzhongxiu
423.8 K/user/wuzhongxiu11
0/user/wyp
8.2 K/user/wzt
8.9 K/user/xiakai10
637.5 M/user/xiangyongqiao15
0/user/xiaohaixao09
590.9 K/user/xiaohaixiao
3.1 G/user/xiaohaixiao09
174/user/xiaokey12
4.2 G/user/xiaokeya12
3.6 G/user/xiaoying10
1.6 G/user/xiaoyuan
482/user/xiaying10
102.6 M/user/xiedinghong10
0/user/xieidnghong10
503.3 M/user/xiexiandong09
1.8 G/user/xieyunfei11
1.5 G/user/xjy12
0/user/xubinjie15
171.2 K/user/xukun
3.5 G/user/xukun09
666.9 M/user/xunianxing13
0/user/xupengliang
9.0 K/user/xupengliang09
436/user/yangbojun09
1023.8 M/user/yangjianrong15
576.5 M/user/yangjinyao08
1.3 G/user/yangjiuyin10
52.9 M/user/yangkunyi08
4.2 K/user/yangshu11
0/user/yangxi
3.0 G/user/yangxi12
3.1 G/user/yanjiantong09
170.3 K/user/yanjiantong9
427.9 K/user/yanjianwen11
1.3 G/user/yanjun
249.8 M/user/yanjun07
0/user/yankun
1.4 M/user/yanpeng10
0/user/yanpengxu
46.4 M/user/yanpengxu10
298.1 K/user/yanujun07
968.7 M/user/yanyao13
702.6 M/user/yaoyao13
930.2 M/user/yinjian12
637.0 M/user/youcong132013
712/user/ypx
611.3 M/user/ysc13
46.8 M/user/ysp
28.5 M/user/yuanshibo10
0/user/yuanshixiong13
3.1 G/user/yuanxiongfei
2.0 G/user/yuanyingtai
6.1 K/user/yuanyingtai09
430.6 K/user/yumaowen
3.5 G/user/yumaowen10
610.6 M/user/yuqibo11
3.5 G/user/yusongping08
298.1 K/user/yusoongping08
0/user/zangjiazhen
367.5 M/user/zangjiazhen10
0/user/zangjizhen10
1.1 G/user/zhangbo12
223.2 M/user/zhangchaoping08
0/user/zhangchi10
4.4 G/user/zhangjiaojiao13
3.8 G/user/zhangjie10
0/user/zhangkejia09
0/user/zhangkejia09.db
610.7 M/user/zhangkenan15
38.0 M/user/zhanglong
4.4 M/user/zhanglong06
7.0 G/user/zhangqi12
3.6 G/user/zhangxiaoliang11
644.9 M/user/zhangxiaowei15
2.9 G/user/zhangxt12
4.9 K/user/zhangyanni11
589.9 M/user/zhangyifan
610.6 M/user/zhangyifan13
1.4 G/user/zhangyu12
673.7 M/user/zhaoguang12
41.6 M/user/zhaolixuan12
58.8 M/user/zhaomin08
4.6 G/user/zhaoqiang12
688.6 M/user/zhaoqiang13
0/user/zhaotianming10
5.3 G/user/zhaowenpei09
4.7 K/user/zhaoxingzhe11
778.7 M/user/zhaoxingzhe15
621.3 M/user/zhaoyankun15
9.1 K/user/zhaoyaokun15
1.0 G/user/zhengguoguang13
3.4 G/user/zhengsongsong10
641.9 M/user/zhijunwei13
9.0 M/user/zhongjinpeng11
716.7 M/user/zhoubin123113
0/user/zhoujian13
3.2 G/user/zhoujie12
965.4 M/user/zhouyang
501.2 K/user/zhouyang12
1.2 G/user/zhswh13
1.0 K/user/zhu
621.9 M/user/zhurundong15
407.8 M/user/zhwsh13
2.1 G/user/zjm
22.0 M/user/zjm12
2.7 G/user/zmh
1.1 G/user/zmh12
27.7 M/user/zouwenyao13
3.0 K/user/zouxiangyu
76.6 M/user/zouxiangyu08
757/user/zouxiangyu09
0/user/zrd
3.4 G/user/zzh
【Java读取txt文件,并且对其文件内容进行统计排序】
推荐阅读
- Opencv图像读取,显示,保存,类型转换
- Java逐行读取数据
- java读取txt文件
- Numpy之线性代数
- 穷举搜索的例子(Google方程式(Java题解))
- Canny 边缘检测
- 2021年数字货币时代加速到来
- 非线性方程组求解
- 图像梯度