Título: Leer txts de carpeta reemplazar puntos por comas Publicado por: look2020 en 13 Octubre 2020, 03:49 am Tengo una carpeta donde cada lapso de tiempo me aparecen 5 archivos .txt provenientes de un proceso externo ( ej.: MES_10102020.txt, TRIMESTRE_2020.txt, SEMESTRE.txt) todos tienen un prefijo mas la fecha. Debo abrirlos, reemplazar los puntos por comas. Lo ideal sería no tener q cargar librerias, quizas hacerlo con vbscript pero me esta costando encontrar info. Logre armar un bat con parametros que ejecuta el vbs y reemplaza los caracteres , pero tengo que cambiarle el nombre del archivo y la idea es que el 1er proceso lea la carpeta y aplique a todos los archivos txt de la misma.
Esto es lo que hice : If WScript.Arguments.Count <> 3 then WScript.Quit end If Reemplazar WScript.Arguments.Item(0), WScript.Arguments.Item(1), WScript.Arguments.Item(2) function Reemplazar(strFile, strFind, strReplace) Set objFSO = CreateObject("Scripting.FileSystemObject") Set objInputFile = objFSO.OpenTextFile(strFile,1) strTempDir = objFSO.GetSpecialFolder(2) Set objTempFile = objFSO.OpenTextFile(strTempDir & "\temp.txt",2,true) do until objInputFile.AtEndOfStream objTempFile.WriteLine(Replace(objInputFile.ReadLine, strFind, strReplace)) loop objInputFile.Close Set objInputFile = Nothing objTempFile.Close Set objTempFile = Nothing objFSO.DeleteFile strFile, true objFSO.MoveFile strTempDir & "\temp.txt", strFile Set objFSO = Nothing end function A esto lo llamo con un bat : reemplazar.vbs MES10102020.txt" "." "," Pero necesito algo que lea todos los archivos , los procese y los guarde con la modificacion. El equipo es un virtual con xp. Título: Re: Leer txts de carpeta reemplazar puntos por comas Publicado por: EdePC en 13 Octubre 2020, 07:08 am Código
Ya lo adaptas a tu estilo. Windows Script 5.6 Documentation: https://raw.githubusercontent.com/pmachapman/VBSE/master/Distribution/script56.chm |