Problema convirtiendo nombre de archivo. Código de página - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: General (https://gambas-es.org/forum-4.html) +--- Tema: Problema convirtiendo nombre de archivo. Código de página (/thread-962.html) |
Problema convirtiendo nombre de archivo. Código de página - Shell - 17-07-2022 Buenas!. Un grupo de nombres de los archivo que aparecían en un ebook que tengo por aquí mostraba caracteres raros. Las tildes. Decidí convertir el nombre a otros códigos de página, pero no parece un nombre de archivo con sentido al convertir el código de página. ![]() Adjunto el código del programa y el ejemplo para poder intentar solucionar el problema. Utilizo para ello distintas codificaciones de página que me genera el comando iconv. Código: Private cuentafilas As Integer Si, la lista es larga. A ver si podéis ayudar con la manipulación de errores. ![]() Saludos RE: Problema convirtiendo nombre de archivo. Código de página - Shell - 17-07-2022 Así se muestra en el listado del comando ls: Cita:Benito P'$'\302\202''rerz Gald¢s - Los Ayacuchos.epub RE: Problema convirtiendo nombre de archivo. Código de página - Shordi - 17-07-2022 Lo primero que me ha llamado la atención es que dispone el sistema (al menos el mío) de 1.178 codificaciones y en el gridview sólo me aparecen 656. Así que he modificado tu código para que me salgan todos: Código: Private cuentafilas As Integer Creo que partes de un supuesto erróneo: El nombre de archivo responde a una codificación concreta. Creo que el nombre del archivo es el resultado de una conversión errónea, por lo que no tiene nada que ver con ninguna en concreto. Es decir, alguien lo creó con acentos, alguien se encontró con que no le salían y trató de convertirlos, con lo que convirtió un caracter extraño en otro caracter extraño distinto y ese segundo par de caracteres extraños es el que se quedó por no ser convertibles. A mí pasó algo así hace mucho tiempo con un puñado de archivos .pdf importados de la red. Me volvieron loco y al final tuve que, simplemente, eliminar todo caracter extraño de los nombres de archivos. Mejor Benito Prez Galds que nada... o no. Saludos RE: Problema convirtiendo nombre de archivo. Código de página - Shell - 17-07-2022 Puedes hacerlo con un bucle for each. ![]() El row.count lo deje dentro para que solo contase las visibles. (17-07-2022, 19:23)Shordi escribió: Lo primero que me ha llamado la atención es que dispone el sistema (al menos el mío) de 1.178 codificaciones y en el gridview sólo me aparecen 656. Así que he modificado tu código para que me salgan todos: Si que tiene más, solo que me interesaban más las se pueden imprimir. Si no puedo verlas. (17-07-2022, 19:23)Shordi escribió: Pero esto no soluciona el problema, sólo te indica qué conversiones generaron error y cuales generaron cadenas inimprimibles (las que están en blanco). Más bien trata de mostrar la conversión directamente con todas las que sean imprimibles. Una vez vista, usar la más adecuada para el comando conv de Gambas. Como no tengo ni la más remota idea de cual es el código de página. (17-07-2022, 19:23)Shordi escribió: Creo que el nombre del archivo es el resultado de una conversión errónea, por lo que no tiene nada que ver con ninguna en concreto. Es decir, alguien lo creó con acentos, alguien se encontró con que no le salían y trató de convertirlos, con lo que convirtió un caracter extraño en otro caracter extraño distinto y ese segundo par de caracteres extraños es el que se quedó por no ser convertibles. Vaya forma de hacerlo. ![]() (17-07-2022, 19:23)Shordi escribió: A mí pasó algo así hace mucho tiempo con un puñado de archivos .pdf importados de la red. Me volvieron loco y al final tuve que, simplemente, eliminar todo caracter extraño de los nombres de archivos. Mejor Benito Prez Galds que nada... o no. No tiene por que ser siempre así, prueba a tener una máquina virtual de Windows para asegurarte. Ahora te cuento el motivo. Al final he usado el archivo zip que contiene los autores de la A -> B Te muestro una captura de "Engrampa" (un parte). Es el gestor de archivos que usa Linux Mint Mate. Hice lo mismo con el comando "unzip -l" y lo muestra igual. ![]() Con Aristóteles igual. Ahora arranco la máquina virtual que tengo por aquí de un viejo xp y ojo con el resultado. Esta usando el compresor que tenía por defecto el xp. ![]() Aparece bien las tildes. De alguna forma se ve en Windows. No debe estar tan mal el archivo. Saludos RE: Problema convirtiendo nombre de archivo. Código de página - Shell - 18-07-2022 Pc real: Linux Pc virtual: Windows Xp. (Eso de pc real y virtual se dice de otra forma), El host y la máquina invitada o algo así. Activo el portapales compartido (usando la opción bidireccional) y arrastre en los menús ( igual, bidireccional) de la máquina virtual, del menú dispositivos. Desde el explorador de Windows arrastro al explorador de Linux el directorio que contiene los archivos de Pérez Galdós. ![]() Esto seguramente se podrá hacer de alguna forma desde Linux directamente. Partiendo del zip incluso donde se encuentran los libros, o con un solo archivo. Lo cierto es que el comando unzip incorpora la opción Cita: Suelo encontrarme la resolución del problema con más facilidad con los archivos de texto. Eso incluso se puede abrir con un editor como SublimeText y convertirlo. Como nota curiosa los archivos de Python ( que no es más que un archivo de texto) "solían" llevar en su parte superior, si era UTF-8 u otro. Entonces si no usabas la instrucción adecuada para esto y su codificación de página, no se podía usar las tildes y la eñe. Pero parece que los editores modernos se lo saltan de alguna forma. Eso no quiere decir que luego en otro editor de programación pueda ocurrir el problema. Cosas de la codificación de los caracteres. Saludos |