gpt4 book ai didi

java - 通过Java以某种方式输出文件

转载 作者:行者123 更新时间:2023-11-30 07:53:56 25 4
gpt4 key购买 nike

有一点问题。我已经成功地根据时间戳顺序输出了一个文件,但是,如果时间戳相同,我还尝试按字母顺序添加另一个条件。

例如:

[时间戳 = 12:30][事件=B]

[时间戳 = 12:30][事件=U]

[时间戳 = 12:30][事件=A]

我希望它输出

[时间戳 = 12:30][事件=A]

[时间戳 = 12:30][事件=B]

[时间戳 = 12:30][事件=U]

我目前的代码是:

package Organiser;


import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Organiser {

public static void main(String[] args) throws FileNotFoundException {
ArrayList<String> lines = new ArrayList<>();
String directory = "C:\\Users\\xxx\\Desktop\\Files\\ex1";
Scanner fileIn = new Scanner(new File(directory + ".txt"));
PrintWriter out = new PrintWriter(directory + "_ordered.txt");

while (fileIn.hasNextLine() == true) {
lines.add(fileIn.nextLine());
Collections.sort(lines);
System.out.println("Reading...");
}

for (String output : lines) {
out.println(output + "\n");
}

out.close();
System.out.println("Complete - See " + directory + "_ordered.txt");
}
}

任何想法

编辑:这仅适用于示例数据,我只希望在时间戳相同时发生这种情况,否则,它将根据时间戳进行相应排序。

示例文件:

https://www.dropbox.com/s/611psg6qw4nl9pw/ex1.txt?dl=0

最佳答案

  1. 您不应该在每次添加行时都对集合进行排序!将 Collections.sort(lines); 放在 while 循环之后

  2. 生成的代码应该已经可以解决问题...我已经在我的系统上对其进行了测试并且它有效!

关于java - 通过Java以某种方式输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32951147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com