Autor
|
Tema: [BATCH][Aporte]MORF:Transforma texto Unicode a ANSI (Leído 7,164 veces)
|
Segadorfelix
Desconectado
Mensajes: 157
|
Morf es una pequeña aplicación que transforma el texto Unicode a ANSI, se recomienda su uso para archivos por lotes. Acepta caracteres especiales(como: < > &), sin dañar la sintaxis ni omitir los caracteres en el archivo final. También se puede utilizar para el cifrado de archivos(con un poco de recursividad). Espero que les sirva la aplicación . NOTA:Versiones posteriores ↓ Rem Unicode_To_Ansi=Morf Rem solo valido unicode, no unicode big endian Rem acepta caracteres especiales :D Rem script creado por segadorfelix Rem funciona por linea de comandos IF [" %~1"]==["-P"] goto palabra IF [" %~1"]==["-p"] goto palabra echo Este script transforma un texto en Unicode a Ansi echo morf -T "Ubicacion del text" Trasnfoma un texto completo a ANSI echo morf -T " %userprofile%\Desktop\emoticonos.txt" echo morf -F "Frase" Trasnfoma una frase a ANSI echo morf -F "õl á©illante" echo morf -P "Palabra" Trasnfoma una palabra a ANSI echo Todas las conversiones se ponen en un archivo .ini echo con el nombre ANSI, junto con un numero al azar, echo exceptuando transformacion de texto. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :text :texto type %text%>>%text%_ANSI echo Transformacion completada. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :palabra for /F "tokens=3" %%y IN (nn.ini ) DO (echo %%y>ANSI %random%.ini ) echo Transformacion completada ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :frase FOR /f "tokens=3*" %%a IN (nn.ini ) DO (echo %%a %%b>ANSI %random%.ini ) echo Transformacion completada
PD:Repetí el código de este post: https://foro.elhacker.net/scripting/batchcomo_evitar_lectura_de_archivo_por_el_comando_type-t377736.0.html;msg1806853#msg1806853. Por que en el anterior post solo citaba el código.
|
|
« Última modificación: 9 Diciembre 2012, 21:37 pm por Segadorfelix »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
Podrías mejorar el código extendiendo su funcionalidad, "Uni to ANSI" y "ANSI to Uni" saludos
|
|
|
En línea
|
|
|
|
Segadorfelix
Desconectado
Mensajes: 157
|
@EleKtro H@cker, Gracias de nuevo. , No sabia, como pasar de ANSI a Unicode. La próxima versión de MORF tendra un método para cifrar (y descifrar, gracias a lo de CMD /U, me ha servido mucho).
|
|
« Última modificación: 9 Diciembre 2012, 21:34 pm por Segadorfelix »
|
En línea
|
|
|
|
Segadorfelix
Desconectado
Mensajes: 157
|
Listo, aquí esta la Versión 2.0, que ahora puede transformar de ANSI a Unicode, me base en el código de "a2u.bat"(pero solo la base, le quite partes innecesarias, agregue partes necesarias del código y simplifique otras). Rem Morf v. 2.0 Rem solo valido unicode, no unicode big endian Rem acepta caracteres especiales :D Rem script creado por segadorfelix REM Gracias EleKtro H@cker REM Unicode basado en a2u.bat bit.ly/RjDeCr Rem funciona por linea de comandos IF /I [" %~3"]==["-U"] ( set "UNI=yes" && set "ftre=Unidode" && goto Format ) else set "ftre=ANSI" :MORF IF /I [" %~1"]==["-T"] goto text IF /I [" %~1"]==["-F"] goto frase IF /I [" %~1"]==["-p"] goto palabra echo Este script transforma un texto en Unicode a Ansi echo morf -T "Ubicacion del text" Trasnfoma un texto completo a ANSI echo morf -T " %userprofile%\Desktop\emoticonos.txt" echo morf -F "Frase" Trasnfoma una frase a ANSI echo morf -F "õl á©illante" echo morf -P "Palabra" Trasnfoma una palabra a ANSI echo Todas las conversiones se ponen en un archivo .ini echo con el nombre ANSI, junto con un numero al azar, echo exceptuando transformacion de texto. echo Para hacer un proceso inverso (ANSI a Unicode )ponga al final -U echo morf -F "äl ¸illante" -U Tranforma una frase a Unidode ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :text call:texto " %~2" " %HuecoDoss%" :texto echo Transformacion completada. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :palabra set "Result= %ftre%%random%.ini" for /F "tokens=3" %%y IN (nn.ini ) DO (echo %%y>%Result%) echo Transformacion completada ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :frase set "Result= %ftre%%random%.ini" FOR /f "tokens=3*" %%a IN (nn.ini ) DO (echo %%a %%b>%Result%) echo Transformacion completada ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :Format FOR /F "usebackq tokens=5" %%A IN (`CHCP` ) DO (IF %%A==1252 ( SET "HuecoDoss=R %random%W.ini" :Funcion (SET /P=ÿþ )<NUL >" %HuecoDoss%" CMD /U /C TYPE "%~nx1" >> "%HuecoDoss%" REN " %~f2" " %~nx1_%ftre %" :qwerty
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
Ahora vengo a decirte de nuevo:
Puedes mejorar su funcionalidad eliminando la necesidad de usar 3 parámetros, haciendo que el script detecte si se intenta convertir un archivo, o una palabra/frase.
PD: +1
Saludos
|
|
|
En línea
|
|
|
|
Segadorfelix
Desconectado
Mensajes: 157
|
Halle una manera, seria expander la variable del archivo/frase/palabra.
El problema es si se quiere transformar una palabra/frase, que es igual al nombre de un archivo que esta en la carpeta de morf. Ejemplo:existe el archivo §☼l, sin extension, se activa MORF para transformar una palabra, que seria §☼l, daría prioridad a el archivo. ¿Hay otro método?
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.885
|
¿Hay otro método?
¿Quien sería tán retorcido de ir dejando archivos SIN extensión y llamados "§☼l"? , Creo que con que compruebes si existe el archivo CON extensión sería suficiente: IF exist "%~1" IF NOT "%~x1" EQU "" (Echo el archivo existe y tiene extension) PD: Es una multi condicional Saludos
|
|
« Última modificación: 10 Diciembre 2012, 00:35 am por EleKtro H@cker »
|
En línea
|
|
|
|
Segadorfelix
Desconectado
Mensajes: 157
|
Simplifique el código, uniendo el transformador de frases con el de palabras, mas el uso de solo 2 parametros. Rem Morf V 2.5 Rem solo valido unicode, no unicode big endian Rem acepta caracteres especiales :D Rem script creado por segadorfelix REM Gracias EleKtro H@cker REM Unicode basado en a2u.bat Code=bit.ly/RjDeCr Rem funciona por linea de comandos IF /I [" %~2"]==["-U"] ( set "UNI=yes" && set "ftre=Unicode" && goto Format ) else set "ftre=ANSI" :MORF echo Este script transforma un texto en Unicode a Ansi y viceversa echo morf "Ubicacion del text" Trasnfoma un texto completo a ANSI echo morf " %userprofile%\Desktop\emoticonos.txt" echo morf "Frase" Trasnfoma una frase a ANSI echo morf "Palabra" Trasnfoma una palabra a ANSI echo Todas las conversiones se ponen en un archivo .ini echo con el nombre ANSI/Unicode, junto con un numero al azar, echo exceptuando transformacion de texto. echo Para hacer un proceso inverso (ANSI a Unicode )ponga al final -U echo morf "äl ¸illante" -U Tranforma una frase a Unidode ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :text call:texto " %~1" " %HuecoDoss%" :texto echo Transformacion completada. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :Fra_Pal set "Result= %ftre%%random%.ini" for /F "tokens=2*" %%y IN (nn.ini ) DO (echo %%z>%Result%) echo Transformacion completada ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :Format FOR /F "usebackq tokens=5" %%A IN (`CHCP` ) DO (IF %%A==1252 ( SET "HuecoDoss=R %random%W.ini" :Funcion (SET /P=ÿþ )<NUL >" %HuecoDoss%" CMD /U /C TYPE "%~nx1" >> "%HuecoDoss%" REN " %~f2" " %~nx1_%ftre %" :qwerty ren %Result%_Unicode %Result%
|
|
« Última modificación: 10 Diciembre 2012, 01:48 am por Segadorfelix »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
(SOLUCIONADO) [ Batch] Duda ¿Como ver un texto ANSI correctamente en el CMD?
Scripting
|
SuperDraco
|
6
|
8,418
|
26 Marzo 2011, 13:41 pm
por FranciskoAsdf
|
|
|
[BATCH] [APORTE] TextCutter (Delimita texto de un archivo y lo corta en trozos)
Scripting
|
Eleкtro
|
0
|
2,727
|
20 Septiembre 2012, 07:52 am
por Eleкtro
|
|
|
[BATCH] [APORTE] TextFont Installer (Instalador automático de fuentes de texto)
Scripting
|
Eleкtro
|
1
|
4,843
|
12 Septiembre 2017, 19:26 pm
por lahero85
|
|
|
Duda con Ascii Unicode, Ansi
Ingeniería Inversa
|
.:UND3R:.
|
6
|
7,762
|
10 Marzo 2014, 18:44 pm
por Gh057
|
|
|
Problema con unicode ansi utf wide characters...
Programación C/C++
|
patilanz
|
0
|
1,821
|
22 Diciembre 2014, 14:30 pm
por patilanz
|
|