Question

Je l'analyse d'un fichier csv et d'essayer de l'envoyer à une table avec moins de champs que le fichier csv d'origine. Comment puis-je supprimer les virgules étrangers qui sont laissés sur si je mets les champs supplémentaires pour rien?

Voici le format csv d'origine:

columns => id,first_name,last_name,phone,fax
sample row => 1,ben,tomas,5555555,6666666

Voici le format final:

column => id,phone,fax
sample row => 1,5555555,6666666

Remarquez les virgules manquantes pour le premier et le dernier nom.

Voici le processeur provisoire de la ligne:

module ETL 
  module Processor
    class PhoneProcessor < ETL::Processor::RowProcessor

  def process(row)
    #debugger
    row = {:id => row[:id], 
           :phone => row[:phone], 
           :fax => row[:fax]}
    row
  end
end
end
end
Était-ce utile?

La solution

Après avoir envoyé un e-mail à la liste de diffusion et d'attendre quelques semaines de la pierre que j'ai conclu la pierre précieuse est mort ou je l'utilise d'une manière qu'il n'a pas été conçu pour être utilisé. réponse faible, mais qui est tout ce que je suis.

P.S. Nous avons décidé de simplement faire des modèles de activerecord et aller de là.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top