none
Manipular arquivo txt RRS feed

  • Pergunta

  • Boa noite pessoal,

     

    To precisando de uma luz!. É o seguinte, eu tenho um arquivo em txt (teste.txt) eu preciso abrir esse arquivo e em cada linha acrescentar um ou dois espaços, logo no inicio das linhas...como uma espécie de tabulação. Tem algum jeito de eu fazer isso por script?? E Se houver outro modo, como eu devo fazer?

     

    Desde já muitissimo obrigado pela ajuda

     

     

    Adriano

    sábado, 21 de julho de 2007 00:53

Respostas

  • Viniciu,

     

    Boa tarde, não estou querendo explorar não tá? é que eu sou leigo nesse assunto, preciso muito fazer isso...vc teria um exemplo prático de como eu faço isso? como eu devo salva-lo, em .vbs, como de costume? Mais uma dúvida, como ele vai saber onde está o arquivo a ser alterado? a sitaxe ficaria assim: cat c:\arquivo.txt | foreach {'  ' + $_} >> c:\arquivo2.txt ?

     

    Mais uma vez, muito obrigado, vou continuar procurando...valeu!

     

    Adriano Ferreira

     

     

     

     

    segunda-feira, 23 de julho de 2007 15:47
  •  

    É só indicar o caminho do arquivo e substituir a palavra, "antes" pelo qe vc quer adicionar....

     

    Code Snippet

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Const ForReading = 1, ForWriting = 2, ForAppending = 8


    arquivo = "c:\texto.txt"


    Set LogFile = FSO.OpenTextFile (arquivo, ForReading, True)


    arrLido = LogFile.ReadAll


    arrLido = split(arrLido, vbCrLf)
    LogFile.Close


    Set LogFile = FSO.OpenTextFile (arquivo, ForWriting, True)
    for i = 0 to Ubound(arrLido)
    LogFile.WriteLine(" antes "&arrLido(i))
    next


    wscript.quit

     

     

     

    o.0 Tests, poste, e se ajudar, não esqueça de classificar....

     

    (Post editado, havia um erro no script....corrigido =D)

    segunda-feira, 23 de julho de 2007 21:51
    Moderador

Todas as Respostas

  • Olá,


    primeiramente, peço desculpas à comunidade pela minha ausência. Entrei de férias só agora, devido à greve na USP

    Há uma forma muito simples de fazer isso usando Windows Powershell:

    cat arquivo.txt | foreach {'  ' + $_} >> arquivo2.txt

    Simples, não? Se precisar fazer isso pra vários arquivos, basta englobar isso com um outro foreach.


    []s,

    Vinicius Canto
    MVP Windows Server - Admin Frameworks
    blog sobre scripting: http://viniciuscanto.blogspot.com


    domingo, 22 de julho de 2007 15:20
    Moderador
  • Viniciu,

     

    Boa tarde, não estou querendo explorar não tá? é que eu sou leigo nesse assunto, preciso muito fazer isso...vc teria um exemplo prático de como eu faço isso? como eu devo salva-lo, em .vbs, como de costume? Mais uma dúvida, como ele vai saber onde está o arquivo a ser alterado? a sitaxe ficaria assim: cat c:\arquivo.txt | foreach {'  ' + $_} >> c:\arquivo2.txt ?

     

    Mais uma vez, muito obrigado, vou continuar procurando...valeu!

     

    Adriano Ferreira

     

     

     

     

    segunda-feira, 23 de julho de 2007 15:47
  •  

    É só indicar o caminho do arquivo e substituir a palavra, "antes" pelo qe vc quer adicionar....

     

    Code Snippet

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Const ForReading = 1, ForWriting = 2, ForAppending = 8


    arquivo = "c:\texto.txt"


    Set LogFile = FSO.OpenTextFile (arquivo, ForReading, True)


    arrLido = LogFile.ReadAll


    arrLido = split(arrLido, vbCrLf)
    LogFile.Close


    Set LogFile = FSO.OpenTextFile (arquivo, ForWriting, True)
    for i = 0 to Ubound(arrLido)
    LogFile.WriteLine(" antes "&arrLido(i))
    next


    wscript.quit

     

     

     

    o.0 Tests, poste, e se ajudar, não esqueça de classificar....

     

    (Post editado, havia um erro no script....corrigido =D)

    segunda-feira, 23 de julho de 2007 21:51
    Moderador
  • Não. Esse "script" é pra ser digitado direto na linha de comando, mas, ao invés do Prompt de Comandos tradicional do Windows, você deve usar o Windows Powershell.

    Recomendo dar uma lida nos seguintes links:

    http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx

    http://viniciuscanto.blogspot.com (meu blog, sobre scripting e Powershell)


    []s,

    Vinicius Canto
    MVP Windows Server - Admin Framework

    segunda-feira, 23 de julho de 2007 22:15
    Moderador