Quelle est la taille de votre fichier?
Cette option charge le fichier entier en mémoire, donc s'il y a des problèmes de taille/mémoire, cela pourrait ne pas fonctionner.
numrows = FasterCSV.read('clients.csv').size
Cette option utilise le module CSV intégré de Ruby, qui, comme vous le savez, est assez lent, mais il fonctionne. Il charge également le fichier en mémoire:
numrows = CSV.readlines('clients.csv').size
Les deux FasterCSV.read et CSV.readlines matrices de retour de tableaux, de sorte que vous pouvez utiliser toute la magie du tableau que vous voulez sur les résultats.
Ruby 1.9 ne supporte pas FasterCSV –
Ensuite, je suppose que l'autre solution pourrait être plus utile dans Ruby 1.9 - c'est lent mais ça marche :) Merci pour le heads-up. – Roadmaster
@VP Je pense que ce n'est pas tout à fait correct. En fait FasterCSV _is_ le csv dans 1.9: http://stackoverflow.com/a/6090840/603309 – Kjellski