IO流读取文件用户信息根据年龄排序后,写到文件


import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.*;/*** IO流读取文件用户信息根据年龄排序后,写到文件*/
public class Operate1 {public static void main(String[] args) throws Exception {BufferedReader reader = new BufferedReader(new FileReader("operate/src/operate418/silence/user.txt"));String line;TreeMap<Integer, String> treeMap = new TreeMap<>(new Comparator<Integer>() {@Overridepublic int compare(Integer age1, Integer age2) {int result = age1 - age2;result = result == 0 ? -1 : result;return result;}});while ((line = reader.readLine()) != null && !"".equals(line)) {if (line.contains("--")) {break;}String[] split = line.split(",");treeMap.put(Integer.parseInt(split[1]), split[0]);}reader.close();//=======================================写入BufferedWriter writer = new BufferedWriter(new FileWriter("operate/src/operate418/silence/user.txt", true));Set<Map.Entry<Integer, String>> entries = treeMap.entrySet();writer.newLine();writer.write("----排序后----");writer.newLine();for (Map.Entry<Integer, String> entry : entries) {writer.write(entry.getValue() + "," + entry.getKey());writer.newLine();writer.flush();}writer.close();}
}

张三,18
狗屎,17
李四,19
王五,17
赵六,22
皮蛋,19
小花,23
小黄,19

----排序后----
王五,17
狗屎,17
张三,18
小黄,19
皮蛋,19
李四,19
赵六,22
小花,23

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/442770.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IO流配置文件,键值对Properties 的读取

import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Properties;/*** IO流配置文件&#xff0c;键值对Properties 的读取*/ public class Demo1 {private static final File file new File("ope…

使用对象操作流程,读写文件

import java.io.*;/*** 使用对象操作流程&#xff0c;读写文件*/ public class Demo1 {private static final File file new File("operate/src/operate419/demo/demo2/user.txt");static {if (file.exists() || !file.canRead()) {try {System.out.println("&…

jdk11 后用的指定编码格式,读取文件

import java.io.FileReader; import java.io.IOException; import java.nio.charset.Charset;/*** jdk11 后用的指定编码格式&#xff0c;读取文件*/ public class Demo2 {public static void main(String[] args) throws IOException {FileReader fileReader new FileReader(…

转换流指定编码读写文件

import java.io.*;/*** 转换流指定编码读写文件*/ public class Demo1 {public static void main(String[] args) throws IOException {FileInputStream fileInputStream new FileInputStream("C:\\Users\\Administrator\\Desktop\\coverage-error.log");InputStrea…

IO流的读写拷贝

import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException;/*** IO流的读写拷贝*/ public class Demo1 {public static void main(String[] args) throws IOException {//在D盘建一个文件夹&#xff0c;&#xff0c…

IDEA启动Tomcat AJP连接器配置secretRequired=“true“,但是属性secret确实空或者空字符串,这样的组合是无效的解决办法

修改Tomcat安装目录》conf》server.xml 配置文件 Connector标签里&#xff1a; 加上 secret"TOMCAT_AJP_SECRET6567" “或者”加上secretRequired"" 这两个配置文件&#xff0c;只需要加一个&#xff0c;或者都加也可以

IO流递归拷贝一个文件夹里面的所有文件,到另一个文件夹。如果重复不拷贝,可续拷

import java.io.*;/*** IO流递归拷贝一个文件夹里面的所有文件&#xff0c;到另一个文件夹。如果重复不拷贝&#xff0c;可续拷* author silence*/ public class IoCopy {private static int count 0;/*** 需要拷贝的起始地“文件夹路径”*/private static final File START …

线程池创建

import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit;/***线程池创建*/ public class Demo1 {public static void main(String[] args) {ThreadP…

多线程和单线程 打印数字到100000 的速度对比

import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; /** author silence 多线程和单线程 打印数字到100000 的速度对比 */ public class Dem…

* IO流递归拷贝一个文件夹 按源文件夹格式拷贝

import java.io.*;/*** IO流递归拷贝一个文件夹 按源文件夹格式拷贝** author silence*/ public class IoCopy2 {private static int count 0;/*** 需要拷贝的起始地“文件夹路径”*/private static final File START new File("C:\\Users\\Administrator\\Desktop\\作…

图片查找

import java.io.*; import java.math.BigInteger; import java.nio.MappedByteBuffer; import java.nio.channels.FileChannel; import java.security.MessageDigest; import java.util.HashMap; import java.util.Properties;/*** 读取一个图片MD5&#xff0c;和文件夹里的所有…

Callable创建多线程

import java.util.concurrent.Callable;/*** author silence* Callable创建多线程* 创件一个类&#xff0c;实现 Callable 《》 这里填返回值类型* 重写call 方法。*/ public class MyCallable implements Callable<String> {Overridepublic String call() throws Exce…

继承Thread 创建多线程的简单实现

/*** 继承Thread 创建多线程的简单实现* author silence*/ public class MyThread extends Thread {Overridepublic void run() {for (int i 0; i < 100; i) {//打印当前线程对象名称System.out.print(getName() "----");System.out.println(i);}} } /** auth…

实现Runnable 创建多线程的简单实现

/*** 实现Runnable 创建多线程的简单实现** author silence*/ public class MyRunnable implements Runnable {Overridepublic void run() {for (int i 0; i < 100; i) {//打印当前线程名System.out.print(Thread.currentThread().getName() " ");System.out.p…

lambda表达式创建一条最简单的线程

/*** author silence*/ public class Demo1 {public static void main(String[] args) {new Thread(() -> {//打印线程名for (int i 0; i < 100; i) {System.out.println(Thread.currentThread().getName() " " i);}}).start();new Thread(() -> {//…

初学多线程使用中踩过的坑

wait使用&#xff0c;外面没有加synchronized &#xff0c;导致频繁报错。 IllegalMonitorStateException - 如果当前线程不是对象监视器的所有者报异常。 wait使用时会释放锁。并且使当前线程休眠&#xff0c;所以如果没有在synchronized 里面&#xff0c;没有获得锁。就会报错…

多线程线程池的基本创建,使用方法

import java.util.concurrent.*;/*** 多线程线程池的基本创建&#xff0c;使用方法** author silence*/ public class Silence {public static void main(String[] args) {//创建一个线程池 最大线程数量20 核心线程15//如果提交了超过15 不超过20的任务&#xff0c;会创建临时…

使用多线程拷贝文件夹

import java.io.*; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit;/*** 使用多线程拷贝文件夹* 不考虑目的地文件的唯一性。 不按源文件格…

javase 的一些基础常用类

/*** author silence* javase 的一些基础常用类*/ public class Silence1 {public static void main(String[] args) { // Obect equals hashcode // Arrays toString sort binarySearch 输出数组 排序 查找 // Objects nonNull isNull 对对象的…

UDP 通讯协议 局域网通信发送消息 简单实现

发送端 import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.util.Scanner;/*** UDP 通讯协议 局域网通信发送消息 简单实现 发送端** author silence*/ public class SendDemo {public static void main(String[] arg…