Olá Ricardo,

No seu código você tentou usar o método 'split' de um objeto da classe Array
(vetor[0] é um array porque você atribuiu assim: vetor[0] = a).

Veja os métodos privados de Array com:
puts Array.private_methods.sort

Veja se o código abaixo serve para esclarecer sua dúvida.

File.readlines("split.txt") .each do |line|
 puts line.split("|").join("-")
end

Em vez de mostrar no terminal com 'puts' você pode enviar a linha para um
arquivo na saída.

[]s

On 3/29/07, [EMAIL PROTECTED] <
[EMAIL PROTECTED]> wrote:

Enviar submissões para a lista de discussão Ruby-l para
        [email protected]

Para se cadastrar ou descadastrar via WWW, visite o endereço
        http://www.listas.unicamp.br/mailman/listinfo/ruby-l
ou, via email, envie uma mensagem com a palavra 'help' no assunto ou
corpo da mensagem para
        [EMAIL PROTECTED]

Você poderá entrar em contato com a pessoa que gerencia a lista pelo
endereço
        [EMAIL PROTECTED]

Quando responder, por favor edite sua linha Assunto assim ela será
mais específica que "Re: Contents of Ruby-l digest..."


Tópicos de Hoje:

   1. uso do método split (Ricardo Almeida)
   2. Re: uso do método split (Bira)


----------------------------------------------------------------------

Message: 1
Date: Wed, 28 Mar 2007 11:52:37 -0300
From: "Ricardo Almeida" <[EMAIL PROTECTED]>
Subject: [Ruby-l] uso do método split
To: [email protected]
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain; charset="iso-8859-1"

Olá pessoal estou tentando usar o método split para tirar do meu arquivo
txt
o simbolo |,
mas aparece  este erro private method `split' called for
#<Array:0x48ff2d8>
(NoMethodError.
Meu problema é este:
Ler de um arquivo txt um conteúdo como este 1|2|5|8|9|78|, etc depois
quero
retirar esse '|'
para depois armazenar esse resultado em um array por exemplo.E puder
manipular esse array como um array de inteiros .
Se alguém poder me ajudar ,valeu!!!!!

Ricardo Fernandes.
Obs.: O código em que começei fazer isso é o seguinte:
#File.open("c:\\teste\\teste3.txt","r") do |handle|
#   handle.each_line do |linha|
#     puts linha
#   end
#end
#Funciona imprime arquivo.

a=File.readlines("c:\\teste\\teste3.txt")
vetor = []
vetor=Array.new
#a.split('|').each { |c| vetor << c unless c == "|"  }
vetor[0]=a

print vetor
s=vetor[0].split("|")
print s
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL:
http://www.listas.unicamp.br/mailman/private/ruby-l/attachments/20070328/e25f027f/attachment.html

------------------------------

Message: 2
Date: Wed, 28 Mar 2007 13:18:23 -0300
From: Bira <[EMAIL PROTECTED]>
Subject: Re: [Ruby-l] uso do método split
To: " lista de discussão sobre a linguagem de programação Ruby "
        <[email protected]>
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

On 3/28/07, Ricardo Almeida <[EMAIL PROTECTED]> wrote:
> a=File.readlines("c:\\teste\\teste3.txt")

O código acima lê todas as linhas do arquivo e as armazena em um Array.


<...>
> #a.split('|').each { |c| vetor << c unless c == "|"  }
<...>
> s=vetor[0].split("|")

Nas linhas acima você está tentando chamar o método "split" em um
Array, que não possui este método. O certo seria fazer algo parecido
com isto:

a.each do |linha|
    vetor = linha.split("|") #Cria um vetor com os elementos da linha e
sem "|"
    vetor.each {|elemento| puts elemento } #imprime cada elemento
end






--
Bira
http://compexplicita.blogspot.com
http://sinfoniaferida.blogspot.com


------------------------------

_______________________________________________
Ruby-l mailing list
[email protected]
http://www.listas.unicamp.br/mailman/listinfo/ruby-l


Fim da Digest Ruby-l, volume 23, assunto 7
******************************************




--
Francisco Ary Martins
http://crabsoft.net
"Os reis deixaram aqui suas coroas e cetros; os heróis suas armas. Mas os
grandes espíritos, cuja glória estava neles e não em coisas externas,
levaram com eles sua grandeza." Shopenhauer
_______________________________________________
Ruby-l mailing list
[email protected]
http://www.listas.unicamp.br/mailman/listinfo/ruby-l

Responder a