elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Quitar tildes de un archivo texto en bat ?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Quitar tildes de un archivo texto en bat ?  (Leído 4,915 veces)
novato04

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Quitar tildes de un archivo texto en bat ?
« en: 26 Julio 2014, 18:23 pm »

tengo un problema con las tildes y tengo que sacarlas de un texto


Vértigo
El crepúsculo de los dioses

Me pasan un script para poder sacar esas tildes en bat


En línea

daryo


Desconectado Desconectado

Mensajes: 1.071



Ver Perfil WWW
Re: Quitar tildes de un archivo texto en bat ?
« Respuesta #1 en: 26 Julio 2014, 21:25 pm »

mm veras la simplicidad de batch a veces hace que sea absurdamente complejo hacer cosas que con otros lenguajes de programacion se harian en pocas lineas hasta ahora logre que avise cuando encuentra en un archivo una vocal con tilde. En un archivo



« Última modificación: 27 Julio 2014, 04:58 am por daryo » En línea

buenas
daryo


Desconectado Desconectado

Mensajes: 1.071



Ver Perfil WWW
Re: Quitar tildes de un archivo texto en bat ?
« Respuesta #2 en: 27 Julio 2014, 04:49 am »

ya logre hacer que funcione . si eres novato en batch talves te desanime un poco pero luego explico el codigo y seguro a alguien le sirve :)


Código:
@echo off
setlocal enabledelayedexpansion
goto main


:si
set true=1
goto :EOF

:no
set true=0
goto :EOF

:leer
set archivo=%1
set /a n=1
set /a tamano=%2
set resultado=
set true=0
for /l %%a in (1,1,%tamano%) do (
rem mayusculas
if  "!archivo:~%%a,1!"=="Á" (
call :si
set resultado=!resultado!A
)
if  "!archivo:~%%a,1!"=="É" (
call :si
set resultado=!resultado!E
)
if  "!archivo:~%%a,1!"=="Í" (
call :si
set resultado=!resultado!I
)
if  "!archivo:~%%a,1!"=="Ó" (
call :si
set resultado=!resultado!O
)
if  "!archivo:~%%a,1!"=="Ú" (
call :si
set resultado=!resultado!U
)
rem minusculas
if  "!archivo:~%%a,1!"=="á" (
call :si
set resultado=!resultado!a
)
if  "!archivo:~%%a,1!"=="é" (
call :si
set resultado=!resultado!e
)
if  "!archivo:~%%a,1!"=="í" (
call :si
set resultado=!resultado!i
)
if  "!archivo:~%%a,1!"=="ó" (
call :si
set resultado=!resultado!o
)
if  "!archivo:~%%a,1!"=="ú" (
call :si
set resultado=!resultado!u
)
if !true!==0 (
set "resultado=!resultado!!archivo:~%%a,1!" )
call :no
)
echo !resultado! >> "(sin tildes)%archiv%"
goto :EOF

:tildes
rem echo  %~z1
if exist %1 (
for /f "tokens=*" %%A in (%1) do (call :leer "%%A" %~z1 )
)
)
goto :EOF

:main
echo escriba el archivo a buscar tildes
set /p archiv=
call :tildes %archiv%

PD: batch es mucho mas util si te gustan los retos que si quieres hacer algo de forma practica xD
« Última modificación: 27 Julio 2014, 16:48 pm por daryo » En línea

buenas
novato04

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Quitar tildes de un archivo texto en bat ?
« Respuesta #3 en: 27 Julio 2014, 06:55 am »

 ;D ;D ;D ;D ;D ;D ;D ;D

Graciass una ultima cosa

Que las palabras salgan sin separarse ?
Porque los nombres estos los tengo que pasar en una lista  me ayudas  :D :D
                     e n r e d o  "                                                                                                                                                                                        
                     a l e g r o  "                                                                                                                                                                                        
                     p e n s a r a  "  
_________________________________Asi
                    enredo
                    alegro
                    pensara
« Última modificación: 27 Julio 2014, 07:26 am por novato04 » En línea

daryo


Desconectado Desconectado

Mensajes: 1.071



Ver Perfil WWW
Re: Quitar tildes de un archivo texto en bat ?
« Respuesta #4 en: 27 Julio 2014, 13:50 pm »

mira el archivo que genera (sin tildes)archivo.txt a mi me funciona bien : P .Lo que pones es la salida de la consola?
En línea

buenas
novato04

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Quitar tildes de un archivo texto en bat ?
« Respuesta #5 en: 27 Julio 2014, 16:28 pm »

Si funciona bien pero las palabras salen separadas

e n r e d o  "                                                                                                                                                                                         
a l e g r o  "                                                                                                                                                                                         
p e n s a r a  " 

como ago para que no salgan asi
En línea

daryo


Desconectado Desconectado

Mensajes: 1.071



Ver Perfil WWW
Re: Quitar tildes de un archivo texto en bat ?
« Respuesta #6 en: 27 Julio 2014, 16:47 pm »

tan simple como cambiar esta linea :
Código:
if !true!==0 ( set resultado=!resultado!!archivo:~%%a,1! )

por esta:
Código:
if !true!==0 ( set "resultado=!resultado!!archivo:~%%a,1!" )

edito ya la puse en el codigo de arriba
« Última modificación: 27 Julio 2014, 16:49 pm por daryo » En línea

buenas
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines