MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    [Resolvido]Converter arquivo de texto UNIX em Windows

    renatoveras
    renatoveras
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 19/10/2015

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  renatoveras em 3/6/2016, 15:37

    Olá amigos, gostaria de uma forma de converter arquivos de texto do formato UNIX para Windows em VBA.

    Já procurei uma forma objetiva mas não achei.

    Grato
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6308
    Registrado : 15/03/2013

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  ahteixeira em 6/6/2016, 09:05

    Olá Renato, poste um arquivo de exemplo para podermos testar.
    Abraço
    renatoveras
    renatoveras
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 19/10/2015

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  renatoveras em 6/6/2016, 09:08

    Oi Teixeira, postarei no início da tarde.

    Grato pela atenção.
    renatoveras
    renatoveras
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 19/10/2015

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  renatoveras em 6/6/2016, 13:23

    Seguem arquivos com codificação UNIX e WINDOWS e Módulo CommonDialog para controle de abertura de janelas windows.

    Consegui adaptar um código que converte mas por algum motivo ele coloca 14 espaços no início após a conversão.

    Não entendi como a função converte para retirar esses indesejados espaços.

    Estou dependendo desse código para ajustar uma importação...

    Qualquer ajuda é bem vinda.

    'Código do inicial para buscar o arquivo a ser importado:

    'Verifica se a pasta C:\FEBRABAN existe, se não existir cria
       If Dir("C:\FEBRABAN", vbDirectory) = "" Then
           MkDir ("C:\FEBRABAN")
       End If

    'Trecho responsável pela captura do arquivo a ser importado
           Dim Endereco As String
           Dim abrirArquivo As New CommonDialog
       
           Endereco = abrirArquivo.GetOpenFile(Me.hWnd, "Selecione o arquivo FEBRABAN V2 a ser importado", "")
       
           If Len(Endereco) > 0 Then
               CaminhoArquivo = Endereco
           Else
               txt_Arquivo = vbNullString
           End If
           
           Me.Recalc
           Me.Repaint
           Me.Requery
       
           'Cria uma cópia do arquivo informado para realizar a importação dos dados
           FileCopy CaminhoArquivo, "C:\FEBRABAN\FEBRABAN.txt"
         
           'chama a função de conversão
           UNIX2DOS

    Segue a função:

    Sub UNIX2DOS()
       
       'função que converte arquivo de texto de UNIX (TELEBRASILIA/BRASILTELECOM/OI) para o formato Windows Access
       
       'Variáveis de entrada
       Dim Originalfile As String
           
       Dim OpenFileNum, SaveFileNum As Integer
       Dim NewFileBuffer As String
       
       Originalfile = "C:\FEBRABAN\FEBRABAN.txt"
       
       NewFile = Left(Originalfile, Len(Originalfile) - 4) + "_TEMP.txt"
       
       OpenFileNum = FreeFile
       Open Originalfile For Binary As #OpenFileNum
       
       NewFileBuffer = Space(LOF(OpenFileNum))
       
       SaveFileNum = FreeFile
       Open NewFile For Output As #SaveFileNum
       
       Get #OpenFileNum, , NewFileBuffer
       NewFileBuffer = Replace(NewFileBuffer, Chr(13), vbCrLf)
       
       Print #SaveFileNum, , NewFileBuffer
       
       Close #SaveFileNum
       Close #OpenFileNum
       
       Kill "C:\FEBRABAN\FEBRABAN.txt"
           
       Name "C:\FEBRABAN\FEBRABAN_TEMP.txt" As "C:\FEBRABAN\FEBRABAN.txt"

    End Sub
    Anexos
    [Resolvido]Converter arquivo de texto UNIX em Windows AttachmentOI_UNIX_e_VIVO_WINDOWS.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (4 Kb) Baixado 14 vez(es)
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6308
    Registrado : 15/03/2013

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  ahteixeira em 7/6/2016, 08:07

    Olá Renato, veja se atende.
    Código:
    Sub ConverterDeUnix()
    'ahteixeira 2016 para MaximoAccess
        
        Dim fOrigem$, fDestino$, Linha$
        
        fOrigem = Application.CurrentProject.Path & "\OI_UNIX.txt"
        fDestino = Application.CurrentProject.Path & "\OI_UNIX_Convertido.txt"
     
        Open fOrigem For Input Access Read As #1
        
        Line Input #1, Linha
        If EOF(1) Then
            Linha = Replace(Linha, vbLf, vbCrLf)
            Close #1
            Open fDestino For Output Access Write As #1
            Print #1, Linha
            Close #1
        Else
            Close #1
        End If
    End Sub
    Pode testar na immediate.
    Abraço
    renatoveras
    renatoveras
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 19/10/2015

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  renatoveras em 7/6/2016, 14:25

    Oi Teixeira,

    Funcionou de forma impecável!

    Muitíssimo obrigado.

    Fiz pequeníssimos ajustes para funcionar aqui, só não entendi a expressão "testar na immediate"

    Segue o código final, só mudei os endereços pra ficarem fixos:

    Código:
    Sub ConverterDeUnix()
    'ahteixeira 2016 para MaximoAccess
      
       Dim fOrigem$, fDestino$, Linha$
      
       fOrigem = "C:\FEBRABAN\OI_UNIX.txt"
      
       fDestino = "C:\FEBRABAN\OI_UNIX_Convertido.txt"
      
       Open fOrigem For Input Access Read As #1
        
       Line Input #1, Linha
       If EOF(1) Then
           Linha = Replace(Linha, vbLf, vbCrLf)
           Close #1
           Open fDestino For Output Access Write As #1
           Print #1, Linha
           Close #1
       Else
           Close #1
       End If
    End Sub

    Mais uma vez obrigado!
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6308
    Registrado : 15/03/2013

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  ahteixeira em 7/6/2016, 15:06

    Olá, obrigado pelo retorno.
    Quanto à janela imediata é uma forma rápida de testar apenas código, veja:
    [Resolvido]Converter arquivo de texto UNIX em Windows 21l4x34

    Abraço
    renatoveras
    renatoveras
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 19/10/2015

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  renatoveras em 7/6/2016, 18:46

    Ah sim, entendi, obrigado.
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6308
    Registrado : 15/03/2013

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  ahteixeira em 9/6/2016, 07:08

    cheers
    esmsoft
    esmsoft
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 47
    Registrado : 13/04/2011

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  esmsoft em 15/5/2019, 22:00


    Olá pessoal,

    usando esse mesmo código tem como converter de Macintosh para Windows.

    Digo isso porque o banco do brasil gera os arquivos em formato ofx dos extratos nesse formato, e eu preciso importar esses dados para dentro do access.

    Se alguém puder me ajudar agradeço.

    Conteúdo patrocinado

    [Resolvido]Converter arquivo de texto UNIX em Windows Empty Re: [Resolvido]Converter arquivo de texto UNIX em Windows

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/9/2019, 12:54