IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Editer nouveau txt sans le sauvegarder [Python 3.X]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Bioinformaticien
    Inscrit en
    Septembre 2021
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Bioinformaticien
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2021
    Messages : 55
    Par défaut Editer nouveau txt sans le sauvegarder
    Bonjour,


    Pour un projet j'aimerai créer un nouveau fichier txt mais sans qu'il soit sauvegardé immédiatement après avoir fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    f = open("newFile.txt","w")
    Dans l'idéal je voudrais que le fichier s'ouvre à la fin du programme pour montrer les résultats inscrits dedans mais que l'utilisateur se voit proposer de l'enregistrer où il le souhaite s'il tente de le fermer. Comme une sorte de fichier temporaire j'imagine.

    Quelqu'un aurait-il une solution ?
    Merci !

  2. #2
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 324
    Par défaut
    bonjour,
    si j'ai bien compris, tu désires créer un fichier temporaire, le nom final ne sera qu'a la fermeture du programme...
    Existe tempfile, a la fin, il te suffit alors de le (déplacer/)renommer

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 762
    Par défaut
    Salut,

    Un fichier texte est une suite/liste de chaînes de caractères: les lignes.
    Si ce n'est pas trop volumineux, cette liste de lignes peut rester en mémoire jusqu'à ce qu'on décide de la sauvegarder.

    Après, si c'est par exemple un fichier .PDF, il faudra peut être sauvegarder les données avant d'appeler un outil externe pour "voir" le rendu (qu'entendez vous par "editer")
    Et si l'utilisateur ne veut pas les sauvegarder "définitivement", il suffira de détruire ce fichier. Sa durée de vie sera "temporaire".

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre confirmé
    Homme Profil pro
    Bioinformaticien
    Inscrit en
    Septembre 2021
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Bioinformaticien
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2021
    Messages : 55
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Un fichier texte est une suite/liste de chaînes de caractères: les lignes.
    Si ce n'est pas trop volumineux, cette liste de lignes peut rester en mémoire jusqu'à ce qu'on décide de la sauvegarder.

    Après, si c'est par exemple un fichier .PDF, il faudra peut être sauvegarder les données avant d'appeler un outil externe pour "voir" le rendu (qu'entendez vous par "editer")
    Et si l'utilisateur ne veut pas les sauvegarder "définitivement", il suffira de détruire ce fichier. Sa durée de vie sera "temporaire".

    - W
    Merci pour la réponse,

    Mon script actuellement réalise une comparaison de fichiers xml et construit un fichier texte ligne par ligne avec les résultats de cette comparaison.
    Jusqu’à maintenant j'ouvrais un fichier texte au début du script dans un dossier ciblé par défaut, j'ajoutais ensuite mes lignes au fur et a mesure puis je fermais le fichier en fin de script.

    En soit il n'est pas très long, environ une cinquantaine de lignes.

    Mais je peux donc tout a fait enregistrer ces lignes dans une liste par exemple et visualiser le rendu avec un outil qui "convertie" cette liste en fichier texte temporaire, mais ensuite il faudrait avoir la possibilité de l'enregistrer.
    Tu connais un outil qui permettrait cela ?

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 762
    Par défaut
    Citation Envoyé par ptrs32 Voir le message
    Mais je peux donc tout a fait enregistrer ces lignes dans une liste par exemple et visualiser le rendu avec un outil qui "convertie" cette liste en fichier texte temporaire, mais ensuite il faudrait avoir la possibilité de l'enregistrer.
    L'outil de base est "print".
    Et enregistrer une liste de chaînes de caractères dans un fichier est assez trivial (je ne vois pas la difficulté que ça - vous - pose).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Membre confirmé
    Homme Profil pro
    Bioinformaticien
    Inscrit en
    Septembre 2021
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Bioinformaticien
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2021
    Messages : 55
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    L'outil de base est "print".
    Et enregistrer une liste de chaînes de caractères dans un fichier est assez trivial (je ne vois pas la difficulté que ça - vous - pose).

    - W
    D'accord je vois que je n'ai pas été clair en fait désolé.

    Je programme un outil destiné a être intégré à une page web. D'un point de vu utilisateur il suffit de cliquer sur un bouton pour lancer mon script python de comparaison de xml.
    Ce que j'aimerai est qu'un fois le programme terminé un fichier text contenant les résultats s'ouvre sur leur bureau et qu'il n'ai pas d'autres choix que de l'enregistrer.

    Du point de vu de mon script, je génère mes résultats lignes par lignes et les ajoute dans un fichier texte. Sauf que ce fichier texte est déjà enregistré dans les dossiers contenant le script à ce moment donc l'utilisateur n'a pas le choix.
    D'où l'idée de faire un fichier temporaire ou de proposer un aperçut de "faux" fichier texte a la fin du script pour éviter cette sauvegarde.

    Ou alors, au lieu d'un aperçu, on peut imaginer juste proposer à cet utilisateur une fenêtre pour choisir la destination de l'enregistrement du fichier de résultat. Est ce que c'est faisable ?


    J’espère que c'est plus clair, désolé pour ça.
    Merci

  7. #7
    Membre confirmé
    Homme Profil pro
    Bioinformaticien
    Inscrit en
    Septembre 2021
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Bioinformaticien
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2021
    Messages : 55
    Par défaut
    Citation Envoyé par papajoker Voir le message
    bonjour,
    si j'ai bien compris, tu désires créer un fichier temporaire, le nom final ne sera qu'a la fermeture du programme...
    Existe tempfile, a la fin, il te suffit alors de le (déplacer/)renommer
    Merci pour la proposition, j'y suis presque.

    Mon code jusque ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import os, tempfile
    tmp = tempfile.NamedTemporaryFile(delete=False,suffix='.txt')
    tmp.write(b"blablabla")
    tmp.close()
    os.startfile(tmp.name)
    Le fichier est bien créé dans le dossier tmp, il est ouvert mais ensuite j'ai le problème du nom qui n'est pas celui que j'aimerai, et lorsque je ferme le fichier il ne me propose pas de l'enregistrer.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Nommer un nouveau classeur sans le sauvegarder ?
    Par marot_r dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/02/2019, 13h45
  2. [VBA-excel] import de fichier txt sans délimiteur de texte
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/01/2008, 05h49
  3. Réponses: 4
    Dernier message: 08/04/2006, 09h10
  4. Ecrire dans un fichier txt sans en effacer le contenu
    Par cari dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/12/2005, 18h11
  5. Réponses: 4
    Dernier message: 05/10/2004, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo