TextEncoder

Batch Text Encoder

Con la versión del programa TextEncoder Pro CL puede cambiar la codificación y el salto de línea utilizado de los archivos de texto a través de la línea de comandos. Esto hace posible controlar el TextEncoder a través de un script. En esta página, nos gustaría presentarle el tema y mostrarle algunos ejemplos de cómo usar el TextEncoder para editar y convertir archivos individuales o el contenido de carpetas completas. Además, al final de esta página, encontrará una descripción general de todos los parámetros que puede usar.

Convertir Archivos individuales o múltiples

Comencemos con un ejemplo simple. Nos gustaría cambiar la codificación de un solo archivo a UTF-8. Para ello pasamos los siguientes parámetros:

TextEncoder.exe -cl C:\test.txt enc=utf8

Primero ve el parámetro -cl, que significa "command line" (línea de comando). Este parámetro controla si el TextEncoder se inicia con una interfaz gráfica de usuario o en modo de línea de comandos sin una interfaz gráfica de usuario. Siempre usamos este parámetro si queremos controlar el TextEncoder a través de la línea de comandos. Si omitimos este parámetro, el TextEncoder se inicia normalmente con una ventana. Como el siguiente parámetro, pasamos la ruta al archivo que queremos editar. Por último pasamos enc=utf8. Esto indica que queremos convertir a la codificación UTF-8. Al final de esta página encontrará una lista de todas las codificaciones que podemos entregar aquí. Este comando convierte el archivo C:\test.txt al formato UTF-8.

Del mismo modo, controlamos el cambio del tipo de salto de línea. El siguiente ejemplo cambia el salto de línea del archivo C:\test.txt a CR LF (Windows).

TextEncoder.exe -cl C:\test.txt lb=crlf

A continuación, queremos especificar explícitamente que la Marca de orden de bytes (Byte Order Mark, bom) está escrita en el archivo. Lo hacemos con el parámetro "bom":

TextEncoder.exe -cl C:\test.txt enc=utf8 bom=1

El parámetro "bom" puede tomar los valores "keep", "0" o "1". Con "1" la marca de orden de bytes siempre se escribe en el archivo, con "0" nunca. Con "keep", se adopta el estado del archivo original (si es posible). En otras palabras, si el archivo original tiene una marca de orden de bytes, también se escribe una marca de orden de bytes en el archivo. Si no, no.

Hasta ahora siempre hemos sobrescrito el archivo C:\test.txt. Ahora queremos guardar el archivo convertido como un nuevo archivo. Para ello utilizamos el parámetro "save":

TextEncoder.exe -cl C:\test.txt enc=latin1 save=C:\nuevo.txt

Aquí cambiamos la codificación del archivo C:\test.txt a Latin 1 (ISO 8859-1) y guardamos el archivo como C:\nuevo.txt. El archivo C:\test.txt permanece sin cambios.

TextEncoder.exe -cl C:\test1.txt C:\test2.txt enc=utf16le

Por supuesto también podemos editar varios archivos al mismo tiempo. Por ejemplo, en este ejemplo, convertiremos los archivos C:\test1.txt y C:\test2.txt al formato UTF16-LE. Puede especificar tantos archivos como desee.

Convertir contenidos de Carpetas

Además de especificar archivos individuales, también puede pasar la ruta a una carpeta para editar su contenido. La sintaxis es la misma que la edición de archivos:

TextEncoder.exe -cl C:\carpeta enc=utf8

Este comando convierte todos los archivos de la carpeta C:\carpeta al formato UTF-8. Si no desea sobrescribir el archivo, puede usar uno de los parámetros save-folder, save-name o save-ext para cambiar la carpeta, el nombre de archivo o la extensión de archivo de los archivos editados, para que los archivos editados se guarden como nuevos archivos.

TextEncoder.exe -cl C:\carpeta enc=utf8 save-folder=C:\nuevacarpeta

En este ejemplo, convertimos todos los archivos de la carpeta C:\carpeta al formato UTF-8 y guardamos el resultado en la carpeta C:\nuevacarpeta. Los archivos originales se mantienen sin cambios.

TextEncoder.exe -cl C:\carpeta enc=utf8 save-folder=C:\nuevo save-name=%%jjjj%%-%%mm%%-%%tt%

En este ejemplo, queremos cambiar no solo la carpeta sino también el nombre del archivo. Aquí guardamos los archivos de la carpeta C:\carpeta en formato UTF-8 en la nueva carpeta C:\nuevacarpeta y cambiamos el nombre del archivo a la fecha actual. Esto es lo que significan los marcadores de posición usados en el parámetro "save-name". Dado que no hemos definido una nueva extensión de archivo con el parámetro "save-ext", se adopta la extensión del archivo original respectivo.

En caso de que no queramos convertir todos los archivos de la carpeta, podemos pasar filtros utilizando parámetros. Por ejemplo, para editar solo archivos de una determinada extensión de archivo:

TextEncoder.exe -cl C:\carpeta enc=utf8 filter-ext=txt

Aquí pasamos el parámetro "filter-ext" con el valor "txt". Esto significa que solo queremos editar archivos con la extensión TXT. Si hay archivos con otros finales en la misma carpeta, se descartarán. Varias extensiones de archivo se pueden especificar de la siguiente manera:

TextEncoder.exe -cl C:\carpeta enc=utf8 filter-ext=txt-htm

Este filtro garantiza que solo los archivos con las extensiones TXT o HTM se conviertan desde la carpeta C:\carpeta. Puede encontrar filtros adicionales y opciones de búsqueda en la parte inferior de esta página en la lista de todos los parámetros disponibles.

TextEncoder.exe -cl C:\carpeta enc=utf8 search-subdirs=0

Además, puede usar el parámetro "search-subdirs" para especificar si solo deben editarse los archivos que están directamente en el primer nivel en la carpeta especificada, o si también deben incluirse todas las subcarpetas de la carpeta especificada. En este ejemplo, especificamos search-subdirs=0. El resultado es que los archivos que están en subcarpetas no se procesan. Si omite este parámetro o pasa search-subdirs=1, también se procesan todos los archivos de todas las subcarpetas. En el ejemplo, por ejemplo, también los archivos de una carpeta como C:\carpeta\carpeta1\carpeta2.

Leer Archivos usando un Formato específico

Normalmente, el TextEncoder adivina la codificación y el salto de línea de los archivos existentes y los lee sobre esta base. Por supuesto, también puede imponer una codificación específica o un tipo de salto de línea específica al leer los archivos. Hace esto con los parámetros enc-read y lb-read.

TextEncoder.exe -cl C:\archivo.txt enc-read=utf8 lb-read=lf

Aquí exigimos que el archivo se lea en formato UTF-8 con el salto de línea LF (Unix, Linux, macOS) y se interprete en consecuencia. Si omite uno de los dos parámetros o ambos parámetros, se utiliza el valor enc-read=auto respectivamente lb-read=auto. Esto significa que los archivos se leen e interpretan debido al reconocimiento automático de la codificación y el salto de línea.

Resumen de todos los Parámetros disponibles

La siguiente tabla enumera todos los parámetros disponibles que puede usar en el TextEncoder. Algunos de los parámetros que ya hemos presentado en los ejemplos de esta página.

ParámetroValoresDefectoDescripción
[Archivos]cualquier ruta(s) de archivo
-Ruta al archivo a convertir. Puede especificar varios archivos en secuencia para convertir varios archivos al mismo tiempo.
[Carpetas]cualquier ruta(s) de carpeta
-Ruta a una carpeta cuyos contenidos deben ser convertidos. Para evitar convertir todos los archivos de la carpeta, puede usar los parámetros search-subdirs, filter-ext, filter-name, filter-name-matchcase, filter-name-regex, filter-hiddenfiles y filter-onlytextfiles para limitar su búsqueda. Se pueden especificar varias carpetas consecutivamente para convertir simultáneamente el contenido de varias carpetas.
lbkeep, system, crlf, lf, cr, nl, ff, nel, ls, ps o vt
keepTipo de salto de línea para el archivo convertido. "keep" conserva el tipo de salto de línea del archivo original, de lo contrario, el tipo especificado. El valor "system" corresponde al tipo de salto de línea estándar del sistema operativo en el que se está ejecutando el TextEncoder actualmente. Así, por ejemplo, crlf para Windows. Una descripción general de los diferentes tipos de saltos de línea se puede encontrar aquí.
lb-readauto, system, crlf, lf, cr, nl, ff, nel, ls, ps o vtautoSalto de línea con el que se lee el archivo. Si este parámetro no se especifica o se especifica "auto", se intenta detectar automáticamente el salto de línea. El valor "system" corresponde al tipo de salto de línea estándar del sistema operativo en el que se está ejecutando el TextEncoder actualmente. Así, por ejemplo, crlf para Windows.
enckeep, ascii, latin1, latin2, win-ansi, win-1250, win-1251, win-1252, win-1253, utf7, utf8, utf16le, utf16be, utf32le o  utf32be
keepCodificación para el archivo convertido. "keep" utiliza la codificación del archivo original, de lo contrario, la codificación especificada. La codificación "win-ansi" depende de la localización de su versión de Windows. Se utilizará la página de códigos de Windows que coincida con la versión de idioma de Windows. Una descripción general de todos los codificaciónes disponibles se puede encontrar aquí.
enc-readauto, ascii, latin1, latin2, win-ansi, win-1250, win-1251, win-1252, win-1253, utf7, utf8, utf16le, utf16be, utf32le o  utf32beautoCodificación con la que se lee el archivo. Si este parámetro no se especifica, se intenta detectar automáticamente la codificación. La codificación "win-ansi" depende de la localización de su versión de Windows. Se utilizará la página de códigos de Windows que coincida con la versión de idioma de Windows.
bom0, 1 o  keep
keep¿Debe escribirse una marca de orden de byte (byte order mark) en el archivo? 0 para nunca, 1 para siempre, "keep" para como en el archivo original.
saveRuta de cualquier archivo
-Con este parámetro puede guardar el archivo convertido explícitamente con un nombre de archivo que se puede seleccionar libremente. Por ejemplo, especifique save=C:\Carpeta\Archivo.txt para guardar el archivo convertido como C:\Carpeta\Archivo.txt. Si solo desea guardar el archivo convertido en una carpeta diferente manteniendo el nombre y la extensión del archivo, utilice el parámetro save-folder y omita el parámetro save. Además, los parámetros save-name para el nombre y save-ext para la extensión de archivo pueden usarse de la misma manera y combinarse entre sí. Si no especifica ninguno de los parámetros save, save-folder, save-name o save-ext, se sobrescribirá el archivo original.
save-folderkeep o cualquier texto
keepCarpeta en la que se guarda el archivo convertido. Si no especifica este parámetro o si llama a este parámetro con el valor "keep", el archivo se guarda en la carpeta en la que se encuentra el archivo original. Este parámetro se puede combinar con los parámetros save-name y save-ext. Cada uno de estos parámetros es opcional, lo que le permite definir de forma independiente la carpeta, el nombre y la extensión. Si desea guardar el archivo convertido con un nombre de archivo explícito con ruta, nombre y extensión, utilice el parámetro save. Si no especifica ninguno de los parámetros save, save-folder, save-name o save-ext, se sobrescribirá el archivo original.
save-namekeep o cualquier texto
keepNombre sin carpeta y extensión de archivo, con el que se guarda el archivo convertido. Si no especifica este parámetro o si utiliza este parámetro con el valor "keep", el archivo recibe el mismo nombre que el archivo original. Este parámetro se puede combinar con los parámetros save-folder y save-ext. Cada uno de estos parámetros es opcional, lo que le permite definir de forma independiente la carpeta, el nombre y la extensión. Si desea guardar el archivo convertido con un nombre de archivo explícito con ruta, nombre y extensión, utilice el parámetro save. Si no especifica ninguno de los parámetros save, save-folder, save-name o save-ext, se sobrescribirá el archivo original.
save-extkeep o cualquier texto
keepExtensión de archivo con la que se guarda el archivo convertido. Si no especifica este parámetro o si usa este parámetro con el valor "keep", el archivo convertido recibe la extensión de archivo que también tenía el archivo original. Este parámetro se puede combinar con los parámetros save-folder y save-name. Cada uno de estos parámetros es opcional, lo que le permite definir de forma independiente la carpeta, el nombre y la extensión. Si desea guardar el archivo convertido con un nombre de archivo explícito con ruta, nombre y extensión, utilice el parámetro save. Si no especifica ninguno de los parámetros save, save-folder, save-name o save-ext, se sobrescribirá el archivo original.
search-subdirs0 o 11¿Deben buscarse las subcarpetas al editar una carpeta? 0 para no, 1 para si. Un valor de 0 edita solo los archivos que están en el primer nivel de la carpeta.
filter-extcualquier texto
-Si solo desea editar archivos con una extensión específica, puede ingresar esta(s) extensión(es) aquí. Por ejemplo, filter-ext=txt para editar solo archivos con la extensión TXT. Las terminaciones múltiples se pueden separar con un guión. Por ejemplo, filter-ext=php-htm-html para editar solo archivos con las extensiones PHP, HTM o HTML. Si omite este parámetro o lo deja vacío, se considerarán los archivos con todas las extensiones de archivo.
filter-namecualquier texto
-Si solo desea editar archivos con un nombre específico, puede ingresar un nombre aquí. Se procesan todos los archivos que contienen los caracteres especificados con "filter-name". Con filter-name=ab, por ejemplo, archivos como abc.txt o xab.txt. Si omite este parámetro o lo deja vacío, se tendrán en cuenta los archivos con todos los nombres.
filter-name-matchcase0 o 10¿Debería interpretarse el texto especificado con el parámetro "filter-name" de acuerdo con su escritura en mayúsculas y minúsculas? 0 para no, 1 para si. Si es 1, el texto en el nombre del archivo debe ser el mismo en el mismo caso. Si es 0 se busca sin distinción de mayúsculas y minúsculas.
filter-name-regex0 o 10Si el filtro de búsqueda especificado con "filter-name" debe interpretarse como una expresión regular, utilizar 1. Si solo desea buscar el texto especificado, utilizar 0.
filter-hiddenfiles0 o 10¿Desea editar archivos ocultos al convertir una carpeta? Un valor de 0 deja todos los archivos ocultos sin tratar, un valor de 1 también maneja archivos ocultos.
filter-onlytextfiles0 o 11¿Desea editar solo archivos de texto al editar una carpeta? 0 para no, 1 para si. En caso 1, cada archivo se comprueba antes de convertirse para ver si es un archivo binario y, si es así, no se realiza el procesamiento.
openfile0 o 10¿Debería abrirse el archivo convertido después de editarlo? openfile=1 abrirá el archivo recién creado.
delfile0 o 10¿Debería eliminarse el archivo original después de la conversión? delfile=1 borra el archivo original. Esta opción solo es útil si los archivos convertidos deben guardarse con un nombre diferente o en una ubicación diferente a la del archivo original y los archivos originales no se deben conservar.

En principio, todos estos parámetros pueden combinarse entre sí y usarse juntos. Si no define un parámetro, el valor predeterminado especificado se usa para este parámetro (el - indica que este parámetro está vacío de manera predeterminada). En la columna "Valores" puede ver todos los valores que puede tener este parámetro.