[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon
plaisir !]
Bonjour,
Mon programme, écrit en C++, sauve des données dans un fichier spécifié
par l'utilisateur. Le choix se fait avec le sélecteur de fichier GTK, qui
retourne le nom de fichier dans une « C-string ». Puis je fais :
ofstream journal(filename);
journal<<session.str();
journal.close();
Quand je teste (sous XP) le programme, qui est dans le répertoire
Téléchargements, le dossier par défaut du sélecteur est Téléchargements,
et là, impossible de créer un fichier (aucun fichier n'est créé dans le
répertoire à l'issue des instructions ci-dessus). En revanche, ça marche
dans le répertoire Bureau (c'est-à-dire, l'exécutable est dans
Téléchargements et l'utilisateur « navigue » jusqu'au répertoire Bureau
dans le sélecteur).
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un
utilisateur ne puisse pas créer un fichier dans ce répertoire !
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Miakinen
Bonjour,
Le 30/03/2012 17:11, Lucas Levrel a écrit :
[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon plaisir !]
Je laisse le crosspost car je ne sais pas quel sera le meilleur groupe pour la suite.
[...]
Quand je teste (sous XP) le programme, qui est dans le répertoire Téléchargements [...] impossible de créer un fichier [...] En revanche, ça marche dans le répertoire Bureau
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un utilisateur ne puisse pas créer un fichier dans ce répertoire !
Je ne sais pas.
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
Non plus.
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
Bonjour,
Le 30/03/2012 17:11, Lucas Levrel a écrit :
[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon
plaisir !]
Je laisse le crosspost car je ne sais pas quel sera le meilleur groupe
pour la suite.
[...]
Quand je teste (sous XP) le programme, qui est dans le répertoire
Téléchargements [...] impossible de créer un fichier [...]
En revanche, ça marche dans le répertoire Bureau
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un
utilisateur ne puisse pas créer un fichier dans ce répertoire !
Je ne sais pas.
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
Non plus.
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
À tout hasard : la présence de deux caractères non ASCII dans le nom
« Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas
si ça peut vraiment jouer, mais c'est une piste possible.
[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon plaisir !]
Je laisse le crosspost car je ne sais pas quel sera le meilleur groupe pour la suite.
[...]
Quand je teste (sous XP) le programme, qui est dans le répertoire Téléchargements [...] impossible de créer un fichier [...] En revanche, ça marche dans le répertoire Bureau
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un utilisateur ne puisse pas créer un fichier dans ce répertoire !
Je ne sais pas.
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
Non plus.
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
Yann Renard
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
Bonjour,
Le 30/03/2012 17:11, Lucas Levrel a écrit :
[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon plaisir !]
Je laisse le crosspost car je ne sais pas quel sera le meilleur groupe pour la suite.
[...]
Quand je teste (sous XP) le programme, qui est dans le répertoire Téléchargements [...] impossible de créer un fichier [...] En revanche, ça marche dans le répertoire Bureau
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un utilisateur ne puisse pas créer un fichier dans ce répertoire !
Je ne sais pas.
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
Non plus.
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Yann
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
Bonjour,
Le 30/03/2012 17:11, Lucas Levrel a écrit :
[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon
plaisir !]
Je laisse le crosspost car je ne sais pas quel sera le meilleur groupe
pour la suite.
[...]
Quand je teste (sous XP) le programme, qui est dans le répertoire
Téléchargements [...] impossible de créer un fichier [...]
En revanche, ça marche dans le répertoire Bureau
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un
utilisateur ne puisse pas créer un fichier dans ce répertoire !
Je ne sais pas.
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
Non plus.
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
À tout hasard : la présence de deux caractères non ASCII dans le nom
« Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas
si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
[Cross-post fclc++ et fco.ms-windows.programmation, suivi à votre bon plaisir !]
Je laisse le crosspost car je ne sais pas quel sera le meilleur groupe pour la suite.
[...]
Quand je teste (sous XP) le programme, qui est dans le répertoire Téléchargements [...] impossible de créer un fichier [...] En revanche, ça marche dans le répertoire Bureau
Mes questions :
- Est-ce un problème de permissions ? Ça me paraît étrange qu'un utilisateur ne puisse pas créer un fichier dans ce répertoire !
Je ne sais pas.
- Dans mon code, que rajouter comme tests pour traquer l'erreur ?
Non plus.
- Des idées de la cause du problème, si ce ne sont pas les permissions ?
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Yann
Lucas Levrel
Le 31 mars 2012, Yann Renard a écrit :
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Merci. J'ai donc deux pistes à explorer : - déterminer l'encodage utilisé par l'OS et convertir le nom de fichier dans cet encodage ; - utiliser la bibli gio pour ouvrir le fichier.
Je vais me pencher moi-même sur la seconde, mais si vous savez comment aborder la première, je suis preneur !
-- LL
Le 31 mars 2012, Yann Renard a écrit :
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
À tout hasard : la présence de deux caractères non ASCII dans le nom
« Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas
si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Merci. J'ai donc deux pistes à explorer :
- déterminer l'encodage utilisé par l'OS et convertir le nom de fichier
dans cet encodage ;
- utiliser la bibli gio pour ouvrir le fichier.
Je vais me pencher moi-même sur la seconde, mais si vous savez comment
aborder la première, je suis preneur !
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Merci. J'ai donc deux pistes à explorer : - déterminer l'encodage utilisé par l'OS et convertir le nom de fichier dans cet encodage ; - utiliser la bibli gio pour ouvrir le fichier.
Je vais me pencher moi-même sur la seconde, mais si vous savez comment aborder la première, je suis preneur !
-- LL
Laurent Georget - slrn
On Sat, 31 Mar 2012 15:02:15 +0200, Lucas Levrel wrote :
Le 31 mars 2012, Yann Renard a écrit :
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Merci. J'ai donc deux pistes à explorer : - déterminer l'encodage utilisé par l'OS et convertir le nom de fichier dans cet encodage ; - utiliser la bibli gio pour ouvrir le fichier.
Je vais me pencher moi-même sur la seconde, mais si vous savez comment aborder la première, je suis preneur !
S'il s'agit de Windows (XP et supérieur en tout cas), c'est l'encodage Latin-1 (aka ISO-8859-1) qui est utilisé (pour les PCs vendus en France en tous cas ; je suppose qu'ils s'adaptent). Le monde Unix et ses bibliothèques ont par contre majoritairement adopté l'UTF-8.
On Sat, 31 Mar 2012 15:02:15 +0200, Lucas Levrel <lucas.levrel@u-pec.fr> wrote :
Le 31 mars 2012, Yann Renard a écrit :
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
À tout hasard : la présence de deux caractères non ASCII dans le nom
« Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas
si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Merci. J'ai donc deux pistes à explorer :
- déterminer l'encodage utilisé par l'OS et convertir le nom de fichier
dans cet encodage ;
- utiliser la bibli gio pour ouvrir le fichier.
Je vais me pencher moi-même sur la seconde, mais si vous savez comment
aborder la première, je suis preneur !
S'il s'agit de Windows (XP et supérieur en tout cas), c'est l'encodage
Latin-1 (aka ISO-8859-1) qui est utilisé (pour les PCs vendus en France
en tous cas ; je suppose qu'ils s'adaptent). Le monde Unix et ses
bibliothèques ont par contre majoritairement adopté l'UTF-8.
On Sat, 31 Mar 2012 15:02:15 +0200, Lucas Levrel wrote :
Le 31 mars 2012, Yann Renard a écrit :
On 03/30/2012 06:19 PM, Olivier Miakinen wrote:
À tout hasard : la présence de deux caractères non ASCII dans le nom « Téléchargements », et aucun dans le nom « Bureau » ? Je ne sais pas si ça peut vraiment jouer, mais c'est une piste possible.
C'est exact, GTK encore ses chaînes de caractères en UTF8
Merci. J'ai donc deux pistes à explorer : - déterminer l'encodage utilisé par l'OS et convertir le nom de fichier dans cet encodage ; - utiliser la bibli gio pour ouvrir le fichier.
Je vais me pencher moi-même sur la seconde, mais si vous savez comment aborder la première, je suis preneur !
S'il s'agit de Windows (XP et supérieur en tout cas), c'est l'encodage Latin-1 (aka ISO-8859-1) qui est utilisé (pour les PCs vendus en France en tous cas ; je suppose qu'ils s'adaptent). Le monde Unix et ses bibliothèques ont par contre majoritairement adopté l'UTF-8.
Lucas Levrel
Le 16 avril 2012, Laurent Georget - slrn a écrit :
On Sat, 31 Mar 2012 15:02:15 +0200, Lucas Levrel wrote :
- déterminer l'encodage utilisé par l'OS et convertir le nom de fichier dans cet encodage ;
S'il s'agit de Windows (XP et supérieur en tout cas), c'est l'encodage Latin-1 (aka ISO-8859-1) qui est utilisé (pour les PCs vendus en France en tous cas ; je suppose qu'ils s'adaptent). Le monde Unix et ses bibliothèques ont par contre majoritairement adopté l'UTF-8.
Voilà. Ma question était donc de déterminer l'encodage de l'OS à l'exécution. Ceci dit, pour mon problème particulier, j'ai suivi ma deuxième piste (utiliser la bibliothèque GIO) et ça marche bien. -- LL
Le 16 avril 2012, Laurent Georget - slrn a écrit :
On Sat, 31 Mar 2012 15:02:15 +0200, Lucas Levrel <lucas.levrel@u-pec.fr> wrote :
- déterminer l'encodage utilisé par l'OS et convertir le nom de fichier
dans cet encodage ;
S'il s'agit de Windows (XP et supérieur en tout cas), c'est l'encodage
Latin-1 (aka ISO-8859-1) qui est utilisé (pour les PCs vendus en France
en tous cas ; je suppose qu'ils s'adaptent). Le monde Unix et ses
bibliothèques ont par contre majoritairement adopté l'UTF-8.
Voilà. Ma question était donc de déterminer l'encodage de l'OS à
l'exécution. Ceci dit, pour mon problème particulier, j'ai suivi ma
deuxième piste (utiliser la bibliothèque GIO) et ça marche bien.
--
LL
Le 16 avril 2012, Laurent Georget - slrn a écrit :
On Sat, 31 Mar 2012 15:02:15 +0200, Lucas Levrel wrote :
- déterminer l'encodage utilisé par l'OS et convertir le nom de fichier dans cet encodage ;
S'il s'agit de Windows (XP et supérieur en tout cas), c'est l'encodage Latin-1 (aka ISO-8859-1) qui est utilisé (pour les PCs vendus en France en tous cas ; je suppose qu'ils s'adaptent). Le monde Unix et ses bibliothèques ont par contre majoritairement adopté l'UTF-8.
Voilà. Ma question était donc de déterminer l'encodage de l'OS à l'exécution. Ceci dit, pour mon problème particulier, j'ai suivi ma deuxième piste (utiliser la bibliothèque GIO) et ça marche bien. -- LL