EDITANDO ARQUIVO.TXT ENORME...
galera tipo, eu tenho um arquivo.txt com cerca de 300.000 palavras tipo assim
teste
palavra
café
pedra
dÃÂÂzimo
o que eu queria era uma ajuda para varrer o arquivo e tirar todos os acentos das palavras...
alguem pode me ajudar?
teste
palavra
café
pedra
dÃÂÂzimo
o que eu queria era uma ajuda para varrer o arquivo e tirar todos os acentos das palavras...
alguem pode me ajudar?
Cara deve ter um exemplo mais prático, + criei isto agora p quebrar seu galho.
Lembre-se: Se não for arquivos de texto, para a função funcionar o arquivo não pode estar em uso.
Lembre-se: Se não for arquivos de texto, para a função funcionar o arquivo não pode estar em uso.
Public Sub AtualizarArquivo(sFile As String)
Dim sFileContents As String, sString
Open sFile For Input As #1
Do While Not EOF(1)
Line Input #1, sFileContents
sString = sString & _
sFileContents & _
vbCrLf
Loop
Close
Open sFile For Output As #1
Print #1, RemoverAcentos(sString)
Close #1
sString = Empty
End Sub
Public Function RemoverAcentos(ByVal Texto As String)
On Error Resume Next
Dim vPos As Byte, i As Long
Const vComAcento = "ÀÃÂÂÂÃÄÅÇÈéÊËÃÅ’ÃÂÂÃŽÃÂÂÒÓÃâ€ÂÕÖÙÚÛÃψáâãäÃÂ¥çèéêëìÃÂÂîïòóÃÂ'õöùúûü"
Const vSemAcento = "AAAAAACEEEEIIIIOOOOOUUUUaaaaaaceeeeiiiiooooouuuu"
For i = 1 To Len(Texto)
vPos = InStr(1, vComAcento, Mid(Texto, i, 1))
If vPos > 0 Then
Mid(Texto, i, 1) = Mid(vSemAcento, vPos, 1)
End If
Next
RemoverAcentos = Texto
End Function
Private Sub Command1_Click()
Call AtualizarArquivo("C:\TEXTO.TXT")
End Sub
FAÇA UM BACKUP DO ARQUIVO ANTES DE EXECUTAR A FUNÇÃO.
Mantendo o mérito ao ponto para o JHENNYERE, eu faria a abertura do arquivo de uma forma que eu acho que fica um pouco mais rápida (precisa testar pra ter certeza):
Qualquer dúvida poste...flw
Public Sub AtualizarArquivo(sFile As String)
Dim sString As String
Open sFile For Input As #1
sString = Input(LOF(1), 1)
Close
Open sFile For Output As #1
Print #1, RemoverAcentos(sString)
Close #1
End Sub
Qualquer dúvida poste...flw
Tópico encerrado , respostas não são mais permitidas