2013-08-06 66 views
0

我需要排序一個csv文件的第一列,這是一個時間戳。我一直在嘗試用下面的代碼要做到這一點,但過程p的InputStream的永遠只是空白:java shell命令排序csv文件

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(); 
+2

爲什麼不使用'sort'命令的'-o'標誌? – jlordo

+0

你是一個聖人。讓這個答案,所以我可以感謝你 – user1553248

回答

2

相反的處理Java中的輸出,你可以使用

-o--output=FILE

sort命令的標誌並傳遞輸出的文件名。

如果您通過與輸入相同的文件名,它將被覆蓋。