我有一個大的csv。我想刪除文件的第一行。這是如何完成的?我不想將每行都複製到一個數組中,並將它們重寫爲先前的索引並刪除第一個。一定會有更好的辦法。 (可能用更快的速度?如何?)如何使用Ruby刪除一行csv文件?
回答
喜歡的東西:
source=File::open("source","r")
dest=File::open("dest","w")
source.each_line do |line|
next if f.lineno == 1
dest.write(line)
end
source.close
dest.close
錯誤,整個源文件被讀入內存提問者想避免。 – 2012-02-16 12:21:40
我的不好,我太快讀了這個問題。這是一個修改後的版本,按行 – 2012-02-16 13:07:56
逐行讀取文件。您沒有關閉文件句柄。明確關閉它們或使用「File.open」的塊形式。 – 2012-02-16 14:14:32
將文件複製到另一個文件,省略了要刪除的行。您不必將文件加載到數組中,只需在同一個循環內逐行讀寫即可。
如果你不介意炮擊了一個命令行,這是特別有效:
system("tail -n +2 #{input} > #{output}")
你的意思是這樣嗎?
source_path = 'liner.txt'
open source_path do |input|
input.gets
open "#{source_path}.header_removed", 'w' do |output|
input.each do |line|
output << line
end
end
end
但是,這個代碼需要CSV
- 1. 使用Ruby從CSV文件中刪除一行
- 2. 如何使用Java從Excel(csv)文件中刪除一行?
- 3. 如何刪除CSV文件中的第一行(coloumn頭文件)?
- 4. 如何使用Ruby從CSV中刪除行
- 5. 刪除csv文件中的一行
- 6. 用CSV刪除一行?
- 7. 使用Octave/Matlab從csv文件中刪除一行
- 8. 我如何從csv文件中刪除一行後,我使用python和numpy
- 9. 如何從datalake store上的csv文件中刪除一行而不使用usql?
- 10. 如何刪除Ruby中的最後一行文件?
- 11. 使用Python刪除列CSV文件
- 12. 使用Python刪除或刪除CSV文件中的最後一列使用Python
- 13. 如何使用Ruby刪除部分CSV字符串?
- 14. 使用PHP有條件地從CSV文件中刪除行
- 15. 刪除每個文件的第一行後合併CSV文件
- 16. 如何使用Java在Excel(csv)工作表中刪除一行?
- 17. 刪除CSV文件中的行
- 18. 從更新csv文件中刪除行
- 19. 從CSV文件中刪除行
- 20. 刪除csv文件中的換行符
- 21. 刪除CSV文件中的重複行
- 22. 如何使用PHP從csv文件中刪除列?
- 23. 如何使用java從csv文件中刪除列?
- 24. 用於刪除CSV文件的第一行的Unix腳本
- 25. 刪除CSV文件的第一行 - php csv文件上傳問題
- 26. 文件Ruby的空行不會刪除
- 27. 刪除文件中的行 - Ruby
- 28. 使用php刪除txt文件一行一行使用php
- 29. 如何在ruby 1.9.2中使用CSV gem創建CSV文件?
- 30. 刪除csv文件java
不是一個Rails的具體問題,簡單的格式。 – 2012-02-16 12:03:01