Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 03/05/2009, à 18:38

kevlar

[résolu]Quelle fonction pour convertir les ##!!! espaces !

Bonjour à tous !
Voici ma question : existe-t-il une fonction, destinée au C, capable de faire la conversion, entre les noms de fichiers "humains" contenant des espaces, et les noms de fichiers (humm... pas de mots) convenant à l'interpréteur de commandes, c'est à dire où les espaces sont remplacés par la séquence \(espace) ?
J'ai vu que Gtk était capable de faire certaines conversions, mais c'est pour des fonctions intégrées à la glib, du style g_chdir ...

Mon problème est que j'emploie des instructions de la forme  system(" cp nom_de fichier_source nom_de fichier_destination") et que même après avoir appliqué une fonction maison sur ces noms de fichiers, pour remplacer les espaces, le système plante parfois, semble-t-il lorsque les chemins sont trop longs (mais j'ai des buffers de 512 octets pour les noms, les conversions, je ne comprends pas !)

Merci d'avance pour votre réponse !

Dernière modification par kevlar (Le 03/05/2009, à 20:05)

Hors ligne

#2 Le 03/05/2009, à 19:55

kevlar

Re : [résolu]Quelle fonction pour convertir les ##!!! espaces !

En fait, quels sont les caractères interdits en batch ? Je viens de voir que si le fichier contenait des tirets (-), des apostrophes (') ce cher ordre cp a des problèmes ...

Hors ligne

#3 Le 03/05/2009, à 20:05

kevlar

Re : [résolu]Quelle fonction pour convertir les ##!!! espaces !

problème résolu, avec une fonction de copie en  binaire trouvée ici :
http://c.developpez.com/faq/?page=fichi … ERS_copier
wink

Hors ligne

#4 Le 03/05/2009, à 20:44

HP

Re : [résolu]Quelle fonction pour convertir les ##!!! espaces !

kevlar a écrit :

Mon problème est que j'emploie des instructions de la forme 

system(" cp nom_de fichier_source nom_de fichier_destination")

Coder en C, Perl, Python… ou n'importe quoi d'autre pour au final utiliser du Bash sur des fonctions de base… je me demande si c'est vraiment judicieux ! roll

Et le problème se situe justement là… je pense.

Dernière modification par HP (Le 03/05/2009, à 20:45)


cat /dev/urandom >/dev/null 2>&1 #github

Hors ligne

#5 Le 03/05/2009, à 21:05

kevlar

Re : [résolu]Quelle fonction pour convertir les ##!!! espaces !

en effet, et résolu comme indiqué au dessus; Mais c'est vrai que les différents langages de haut niveau manquent, en natif de fonctions élémentaires de gestion de fichier, telles que la simple copie.:rolleyes:

Hors ligne