0

我需要按第一列(即时间戳)对 csv 文件进行排序。我一直在尝试使用以下代码执行此操作,但进程 p 的输入流始终为空白:

    Process p = Runtime.getRuntime().exec("sort -k1,1 -t, Bucket_Stats.csv");
    p.waitFor();
    // read this file into InputStream
    InputStream in = p.getInputStream();
    OutputStream output = new FileOutputStream("Sorted_Bucket_Stats.csv");
    System.out.println(IOUtils.copy(in,output));
    output.flush();
    output.close();
4

1 回答 1

2

不用在 Java 中处理输出,您可以使用

-o或者--output=FILE

命令的标志sort并传递输出的文件名。

如果您传递与输入相同的文件名,它将被覆盖。

于 2013-08-06T00:30:34.590 回答