IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ruby Discussion :

Problème de lecture de fichier


Sujet :

Ruby

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Problème de lecture de fichier
    Bonjour,

    Je suis confronté à un problème qui commence à me rendre fou.

    J'essaye d'écrire un script qui lit des URLs dans un fichier texte puis effectue différentes actions. J'ai pour cela défini plusieurs fonctions. Lorsque je passe l'URL directement dans la fonction, cela fonctionne (exemple : fonction('www.google.fr').
    En revanche, quand j'utilise une variable (exemple : fonction(url)) qui contient l'URL, cela ne fonctionne pas.

    Un "print" de url et un "print" de URL donnent la même chose.
    En revanche, un YAML::dump('www.google.fr') donne cela : Un YAML::dump(url) donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    --- |
    www.google.fr
    fonction('www.google.fr') fonctionne mais fonction(url) donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    /opt/local/lib/ruby/1.8/resolv-replace.rb:10:in `getaddress': Hostname not known: www.google.fr (SocketError)
    	from /opt/local/lib/ruby/1.8/resolv-replace.rb:19:in `initialize'
    	from /opt/local/lib/ruby/1.8/net/http.rb:560:in `open'
    	from /opt/local/lib/ruby/1.8/net/http.rb:560:in `connect'
    	from /opt/local/lib/ruby/1.8/timeout.rb:53:in `timeout'
    	from /opt/local/lib/ruby/1.8/timeout.rb:101:in `timeout'
    	from /opt/local/lib/ruby/1.8/net/http.rb:560:in `connect'
    	from /opt/local/lib/ruby/1.8/net/http.rb:553:in `do_start'
    	from /opt/local/lib/ruby/1.8/net/http.rb:542:in `start'
    	from /opt/local/lib/ruby/1.8/net/http.rb:1035:in `request'
    	from /opt/local/lib/ruby/1.8/net/http.rb:772:in `get'
    Le code et le fichier sont en UTF-8, et j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    file = File.new(file_input, "r")
    while (line = file.gets)
    pour lire le fichier.

    [UPDATE]
    Ruby 1.8.7 / Mac OS X.7
    Des idées ?

    Merci par avance,

  2. #2
    Membre habitué
    Inscrit en
    Décembre 2004
    Messages
    119
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 119
    Points : 156
    Points
    156
    Par défaut
    C'est peut-être les retours à la ligne qui pose problème?
    Est-ce que ce code qui suit donne le résultat que tu cherches?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    require 'yaml'
    File.readlines('toto.txt') do |line|
      p YAML.dump line unless line.chomp!.empty?
    end

Discussions similaires

  1. [POI] Problème de lecture des fichiers Word
    Par Dari dans le forum Documents
    Réponses: 9
    Dernier message: 05/07/2007, 14h08
  2. Problème de lecture sur fichier ini.
    Par braoru dans le forum Delphi
    Réponses: 2
    Dernier message: 28/07/2006, 15h34
  3. [DOM4J] Problème de lecture de fichier xml avec dom4j
    Par santana2006 dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 05/04/2006, 16h52
  4. Problème de lecture de fichier Excel
    Par cocaetjusdorange dans le forum Langage
    Réponses: 4
    Dernier message: 08/02/2006, 11h08
  5. Problème de lecture de fichier Oracle 9.2
    Par fortlow dans le forum Oracle
    Réponses: 4
    Dernier message: 14/11/2005, 16h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo