Weno, creo que se posible editar archivos en VB, lo que quiero hacer es esto:
supongamos que tengo este archivo: file.txt
Hola
a
todos
soy
Hendrix
Weno, supongamos que tenemos esto, komo konsigo ver si el archivo kontiene la palabra "soy" y si la tiene que modifike el archivo y kede asi:
Hola
a
todos
y
a
todas
soy
Hendrix
(Este archivo tiene las palabras separadas por lienas, asi que se tienen que poner los saltos de liena pertenientes).
Alguien me puede ayudar???
Salu2 y gracias.
Hendrix
re = "y" & vbnewline & "a" & vbnewline & "todas"
open "file.txt" for input as #1
while not eof(1)
line input #1, contenido
if ucase(contenido) <> "SOY"
open "file2.txt" for append as #2
print #2, contenido
close
else
open "file2.txt" for append as #2
print #2, re
print #2, contenido
close
end if
wend
close
kill "file.txt"
name "file2.txt" as "file.txt"
msgbox "Listo"
Weno, le e tenido que agregar algunos kambios y me keda asi:
Private Sub Command1_Click()
Dim re As String
Dim contenido As String
re = "y" & Chr(13) & "a" & Chr(13) & "todas"
Open "C:\file.txt" For Input As #1
While Not EOF(1) = [color=Red]True[/color]
Line Input #1, contenido
If UCase(contenido) <> "SOY" [color=Red]Then[/color]
Open "C:\file2.txt" For Append As #2
Print #2, contenido
Close
Else
Open "C:\file2.txt" For Append As #2
Print #2, re
Print #2, contenido
Close
End If
Wend
Close
Kill "C:\file.txt"
Name "C:\file2.txt" As "C:\file.txt"
MsgBox "Listo"
End Sub
Pero ahora me sale error aki:
While Not EOF(1) = True
Me sale sete error: Nombre o numero de archivo incorrecto.
Gracias de todos modos... ;) ;)
Salu2
Me salte el then (eso es por programar en VFP y C que no lo usan jejeje
estas negando el eof asike no nesesitas el = True
con solo While Not EOF(1) listo!!
Weno, lo e korregido y me salta error en la misma linea y kon el mismo tipo de error... :-\ :-\ :-\
Salu2 y zankiu!!!
Dim Final, Todo, Buff, Frase As String
Frase = vbCrLf & "y" & vbCrLf & "a" & vbCrLf & "todas" & vbCrLf 'Aramamos la frase
Open "c:\linea.txt" For Input As #1 'abrimos el archivo a modificar
Do While Not EOF(1) 'mientras no se haya terminado
Line Input #1, Buff
Todo = Todo & Buff & vbCrLf 'ir poninedo linea por linea en una variable
Loop
Close #1 'cerramos
For i = 1 To Len(Todo) 'desde 1 hasta el largo de la variable
If Mid(Todo, i, 3) = LCase("soy") Then 'si encontramos la palabra 'soy'
Final = Left(Todo, i - 2) & Frase & Right(Todo, Len(Todo) - i + 1) 'ponemos en una nueva variable lo que esta antes del 'soy', nuestra frase y lo que queda al final.
End If
Next i
Open "c:\Modificado.txt" For Output As #1 'Abrimos el archivo resultante
Print #1, Final 'ponemos la variable Final que nos habia quedado
Close #1
Espero que te sirva, saludos.-
Muchisimas gracias NYlon!!!! ;) ;) ;)
A ti tambien Cyklow
Salu2