epelpad

Encontrar nombres de archivos con caracteres unicode.

Ciertos caracteres unicode no obvios a simple vista en los nombres de archivos suelen causar errores en algunas situaciones (algunos zip or rar no abre o abren y parecen vacios, algunos pdf no abren, algunos programas anteriores a la implementacion del unicode dan algun tipo de error raro respecto al nombre de archivo o la carpeta, etc).

Como encontrarlos y renombrarlos

No es relevante que pregunten porque se me ha presentado este problema. Pero existe. En los posts en ingles los tipicos moralistas dan exasperantes consejos sobre las maravillas de Windows o Linux, sobre los scripts esotericos en python, o explicaciones de que los caracteres unicode ya tienen incluidos los caracteres ansi. Quien tuvo este problema probablemente YA sabe todo eso y no le sirve de nada, por eso me tome el trabajo de escribir eso.

Necesitaba encontrar nombres de archivos que contuvieran caracteres no ascii/ansi para hacer CIERTAS cosas. Esta solucion es util si tienen algunos nombres de archivos en unicode, si son muchos va a resultar un poco tedioso, peor.

He leido docenas de posts y ninguno me resulto util. Este es un metodo muy primitivo que saca ventaja de la limitacion de VB6 en la manipulacion de los caracteres unicode.

0-Instalen una version de Flash Renamer, FN de ahora en mas. Se supone que ya saben donde buscarlo y como HACERLO andar. Tal como el autor explica el programa se creo usando VB6, es muy bueno, pero VB6 es viejo, no tiene mas soporte de Microsoft (tipico) y aparentemente tiene limitaciones para trabajar con unicode. Por consiguiente FN tiene la mismas limitaciones, el autor afirma que no va a reescribir el programa en otro lenguaje mas cool asi que voy a usar ese error para lograr mi objetivo.

1-Digamos que tengo una carpeta llena de archivos. Algunos de ellos puede contener o no caracteres no ascii/ansi en sus nombres de archivo. Si sus nombres estan compuestos de caracteres de caracteres ascii/ansi el programa les va a dejar explorar el contenido de la carpeta sin dar ningun error. De otro modo va a mostrar un dialogo avisando que encontro ciertos caracteres unicode que no no puede manipular. PD: una vez usado el programa por primera vez, la integracion con windows explorer se activa y al hacer click derecho sobre una carpeta aparecera la opcion "Start Flash renamer" obviamente este metodo es mas rapido que abrir el programa y buscar la carpeta especifica.

2-Abran un bloc de notas. Intenten explorar con FN la carpeta donde estan los archivos sospechosos. Segun lo explicado en 1 si hay errores les va salir un cuadro de dialogo. Tomen nota de alguna parte del nombre de archivo mencionado que consideren que cuando hagan una busqueda les de resultados exactos. Cierren el dialogo y el FN.

3-Copien desde el bloc de notas ese texto y peguenlo en el cuadro de dialogo de busqueda de windows explorer (se entiende que estando parados en la carpeta de archivos sospechosos). Una vez encontrado el archivo especifico, cortenlo y peguenlo en una subcarpeta creada previamente llamada por ejemplo "unicode". De ahora en mas ese nombre de archivo ya no va a aparecer como error la proxima vez que intenten explorar con FN la carpeta de sospechosos, pero puede aparecer otro nombre nuevo si siguen existiendo sospechosos.

4-Sigan repitiendo el paso 3 hasta que todos los archivos sospechosos se hayan movido a la subcarpeta "unicode". Van a saber que terminaron cuando FN se deje de quejar y les deje explorar el contenido de la carpeta original.

5-Ahora intenten explorar con FN la subcarpeta "unicode". Se supone que todos esos van a dar error pero solo van a poder ver el primero que se le ocurra a FN, asi que vamos a intentar descartar ese para que siga con otro. Presten atencion al dialogo, va a mostrar "?" en alguna parte del nombre de archivo donde estan los caracteres unicode.

6-En windows explorer busquen especificamente ese archivo, una vez que lo encuentren aprieten F2, seleccionen el caracter sospechoso y para mejor margen elijan el previo y el siguiente. Escriban (para reemplazarlos) cualquier caracter que quieran.

7-Muevan ese archivo a otra subcarpeta previamente creada llama por ejemplo "arreglando". Intenten explorar con FN la carpeta "arreglando", si los deja esta todo ok, muevan el archivo a la carpeta de sospechosos original, sino repitan paso 6

8-Repitan desde paso 5 hasta que todos los archivos queden limpios.

Saludos. Pablo.

PD: Sientanse libres de compartir esto donde se les de la gana y me importa un pito si mencionan el post original o no.

---

Non apparent Unicode characters in Filenames may cause errors in some situations. Finding files and renaming

Don't ask why I or someone else might have encounter this kind of problem, and don't give me lectures on the wonders of Windows or Linux or esoterics scripts on python, or explanations that unicode characters already include ansi characters, we ALREADY know all that. I wanted to find filenames with non-ascii characters to do THINGS with them. Just as simple as that. This solution will be usefull if you know you have just some unicode filenames, if you have lot's of them it will be time consuming.

I've read dozens of posts and not a single one was useful. This is a very primitive method just found using disfuncionality of VB6 in manipulation unicode characters.

0-Install a version of Flash Renamer, from now on called FN. As the author says the program is coded using VB6, excellent program, but VB6 is no longer supported by Microsoft and it apparently has some limitations with unicode, so does FN and the author will not rewrite the code in some other fancy newer language or version. So that error will be very useful to accomplish my goal.

1-Lets say I have a folder of files, some of them might or might not have non ascii characters in their filenames. If they are composed only of ascii/ansi characters the program will let you browse the folder without errors, period. Otherwise it will show a dialog letting you know it found certain unicode characters it can't handle. PD: after using FN for the first time shell integration will display "start flash renamer" when rick clicking on a folder, obviously this option is faster than opening the program to search for that specific folder.

2-Open a notepad. Try to browse with FN the folder with suspected files. According to point 1 if there is any error a dialog error will pop up. Take note of some part of the filename that you consider it will bring exact search results. Close the dialog and the FN.

3-Copy that text and paste it in windows explorer file search dialog. Once you found that specific file cut it and paste it in a previously created subfolder named for example "unicode". Now that file will no longer show next time you'll try to browse the folder with FN, but some other, if there is, will pop up.

4-Continue doing this until all suspected files are moved to the subfolder "unicode". You'll know you finished when the FN stops complaining and let you browse the content of your parent folder.

5-Now try to browse with FN the subfolder "unicode". Pay attention to the dialog. It will show some "?" on the filename parts suspected of unicode characters.

6-In windows explorer search for that specific file. Once found. Press F2 and select the suspected character. You can also select previous and next char for better redundancy. Type (replace them) with any character you like.

7-Move that file to a previously created subfolder named for example "fixing". Try to browse with FN the "fixing" folder. If it lets you everything is ok. Move the file to the original folder otherwise repeat step 6

8-Repeat steps from 5 until all your files are cleaned.

0 comentarios - Encontrar nombres de archivos con caracteres unicode.