Detecter antislash en C
Yelle
-
Yelle -
Yelle -
Bonjour,
Je réalise un petit programme qui ouvre des fichiers. L'utilisateur saisit une chaine de char qui est l'adresse windows de l'image, qui est ensuite ouverte. Je veux donc doubler tous les '\' pour pouvoir utiliser fopen.
Mon problème est que je n'arrive pas à détecter les anti-slash dans ma chaine. Est-ce possible?
Merci d'avance à ceux qui pourront m'aider.
Je réalise un petit programme qui ouvre des fichiers. L'utilisateur saisit une chaine de char qui est l'adresse windows de l'image, qui est ensuite ouverte. Je veux donc doubler tous les '\' pour pouvoir utiliser fopen.
Mon problème est que je n'arrive pas à détecter les anti-slash dans ma chaine. Est-ce possible?
void dbleslash(char *s1) { int i,j; char s2[100]; for(i=0,j=0;s1[j]!='\0';i++,j++) { s2[i]=s1[j]; if(!strncmp(s1,"\\",1)){ i++; s2[i]='\\'; } } s2[i]='\0'; strcpy(s1,s2); } char s1[100]="test\char"; dbleslash(s1); printf("%s",s1); =>strchar
Merci d'avance à ceux qui pourront m'aider.
A voir également:
- Detecter antislash en C
- Comment détecter un traceur sur téléphone - Accueil - Confidentialité
- Antislash qwerty - Forum Windows
- Antislash windows ✓ - Forum Programmation
- Antislash mac ✓ - Forum MacOS
- Macbook pro: comment afficher la touche \ ✓ - Forum MacOS
1 réponse
Bonjours
Peu être ai-je mal compris l'énoncer mais si l'utilisateur entre le chemin de votre fichier alors vous n'avez pas à vous soucier de doubler les "\", ceci est fait automatiquement lorsque vous récupérez la chaine...
Bien à vous.
Peu être ai-je mal compris l'énoncer mais si l'utilisateur entre le chemin de votre fichier alors vous n'avez pas à vous soucier de doubler les "\", ceci est fait automatiquement lorsque vous récupérez la chaine...
char chFilePath[255]; gets(chFilePath); // sauf erreur de frappe, "chFilePath" EST un chemin valid! FILE *file = fopen(chFilePath, "r"); if(file != NULL) fclose(file); else printf("Erreur lors de l\'ouverture du fichier\n");
Bien à vous.
Yelle
En effet, cela semble marcher. Merci de votre aide.