1
A
回答
8
目前尚不清楚您的文件中的數據格式是什麼,以及您用於排序的標準,所以我無法爲您提供準確的答案。
但是,基本上,你可能需要像這樣:
File.open("file_name","r").read.split(",").sort_by {|x| x.length}
您:
- 打開使用
File.open
文件。 - 閱讀整個文件並獲得一個字符串。您也可以使用
each
方法逐行讀取文件。 - 拆分字符串使用
split
。使用的分隔符是,
。 - 使用
sort_by
根據塊中指定的標準對它們進行排序。
2
Enumerable#sort_by將允許您使用特定比較函數對數組(或其他可枚舉對象)進行排序。
0
如果「帶分隔符的文本文件」你的意思是CSV文件(字符分隔值),那麼你可以使用csv
library,這是標準庫的一部分,對其進行解析。 CSV爲您提供外觀和感覺像Ruby Hash
es和Array
s的對象,因此您可以使用所有標準Ruby方法進行排序,過濾和迭代,包括前述Enumerable#sort_by
。
相關問題
- 1. Ruby - 解析文本文件
- 2. 解析Ruby中的二進制文件
- 3. 解析文本/安排在日誌文件中的文本
- 4. 解析文本文件,並在Perl
- 5. 對文本文件進行排序並刪除重複項
- 6. 並行解析文件
- 7. 如何在PowerShell中對文本文件進行排序
- 8. 解析縮進文本文件
- 9. 在Python中對文件進行排序
- 10. 如何在XML文件中進行AJAX並解析值?
- 11. 解析文本文件並寫入CSV
- 12. 對bash中的文本文件中的段落進行排序
- 13. 讀文件夾,文件名進行解析並調用其他程序
- 14. 解析文本文件,找到匹配的行並保存到文本文件
- 15. 對文本文件中的單詞進行排序和計數
- 16. 對文本文件中的數據進行排序
- 17. 對從文本文件中提取的數據進行排序
- 18. 如何對bash中的文本文件進行塊排序?
- 19. 用python對文本文件中的內容進行排序
- 20. 對文本文件中的數字進行排序
- 21. 如何在Python中對行中的文本文件進行排序
- 22. 解析文本文件,處理新行?
- 23. 解析Ruby Rake任務中的平面文本文件
- 24. 在ruby中排序統計文件
- 25. 我將如何解析這樣的文本文件並進行編輯
- 26. c# - 解析Html表格並對行進行排序
- 27. 在輸出文件中對文件名進行排序
- 28. 如何按行解析文件並拆分文本
- 29. 按排序順序對未排序的文本文件進行排序並重寫爲相同的文本文件
- 30. Groovy解析文本文件
「r」在這裏如何使用?它代表什麼?另外,我不太明白{| x | w.length}。如果你可以請分解一下像本人這樣的Ruby n00b,我會非常感激。 – 2009-11-09 04:01:22
「r」表示文件正在「讀」模式下打開。此外,w.lenth看起來像一個類型。它應該是x.length。 '{| x | x.length}'是傳遞給'sort_by'方法的塊。它使sort_by方法按每個「分割」單詞的長度排序。在這裏,使用分隔符的單詞分隔符是逗號(,)。 – Chirantan 2009-11-09 04:33:15
我現在看到了。非常感謝你的澄清。 – 2009-11-09 05:16:00