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

C# Discussion :

Créer un fichier texte et l'ouvrir à la volée


Sujet :

C#

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 172
    Points : 43
    Points
    43
    Par défaut Créer un fichier texte et l'ouvrir à la volée
    Bonjour,

    je vous explique mon problème. J'aimerais dans mon code pouvoir créer un fichier en ecrivant des lignes dedans et l'ouvrir directement de suite. Bien évidement tout cela sans le stocker nulle part. sans chemin pour stocker le fichier.

    Est ce possible? Comment faire ?

    Pour l'instant je n'arrive qu'à créer un fichier et ecrire dedans mais lors de la création du fichier il me demande un chemin ou stocket le fichier alors que je ne veux pas cela.

    Merci pour votre aide

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 22
    Points : 28
    Points
    28
    Par défaut
    Tu es obligés de stocker ton fichier quelque-part, tu peux pas le stocker dans les clouds ...

    Sinon tu écris dans une classe dans une string ça m'a l'air correspondre a ton problème

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 172
    Points : 43
    Points
    43
    Par défaut
    J'ecris dans une classe string c'est à dire.
    Je dois à la fin du traitement ouvrir un document .txt avec mes données récupérées. Du coup, je veux simplement cliquer sur mon bouton, je fais un traitement ça ouvre le fichier sans le stocker nulle part et ensuite soit l'utilisateur ferme et il n'est pas stocker soit il l'enregistreà l'endroit qu'il veut.

  4. #4
    Membre habitué Avatar de Pynouz
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 274
    Points : 177
    Points
    177
    Par défaut
    A mon avis, tu devrais utiliser un contrôl RichTextBox et afficher le futur contenu de ton fichier .txt.
    Ensuite tu gère par le biais de boutons ou autre si le contenu de la RichTextBox doit être enregistré dans un fichier .txt ou non.

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par Naruto_kun Voir le message
    J'ecris dans une classe string c'est à dire.
    Déjà, utiliser StringWriter qui permet d'écrire dans un StringBulder de la même manière que dans un fichier.

    Je dois à la fin du traitement ouvrir un document .txt avec mes données récupérées. Du coup, je veux simplement cliquer sur mon bouton, je fais un traitement ça ouvre le fichier sans le stocker nulle part et ensuite soit l'utilisateur ferme et il n'est pas stocker soit il l'enregistreà l'endroit qu'il veut.
    Tu utilises ensuite un StreamWriter pour persister le cas échéant le contenu du StrignBuilder sous jacent au StringWriter.

    Quelle difficultés rencontres tu exactement ?

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 196
    Points : 197
    Points
    197
    Par défaut
    Je sais pas si ça va te plaire, mais ce que je te propose, c'est de créer un fichier txt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.IO.File.CreateText(@"Destination_de_ton_fichier\fichier.txt");
    Puis quand l'utilisateur ferme le fichier, tu le supprime de l'endroit ou tu l'avais sauvegardé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.IO.File.Delete(@"Destination_de_ton_fichier\fichier.txt");

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 141
    Points : 201
    Points
    201
    Par défaut
    Là est toute l'utilité des dossiers "temp", "tmp" et consorts...

  8. #8
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 172
    Points : 43
    Points
    43
    Par défaut
    Je vous re-explique ce que j'aimerais faire.

    Lorsque je clique sur un bouton, j'effectue un traitement qui me récupère des données stockées en base.
    Ensuite j'aimerais mettre ces données récupérées dans un fichier sans le stocker nulle part (si cela est possible bien sur).
    Une fois que j'ai remplis mon fichier, j'aimerais l'afficher à la volée.

    La méthode de patman44 me parait pas mal mais comment je peux récupérer, l'evenement fermeture de fichier?

    Avez vous une autre idée ? Est ce possible ce que je demande ?

  9. #9
    Membre habitué Avatar de Pynouz
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 274
    Points : 177
    Points
    177
    Par défaut
    Citation Envoyé par Naruto_kun Voir le message
    Je vous re-explique ce que j'aimerais faire.

    Lorsque je clique sur un bouton, j'effectue un traitement qui me récupère des données stockées en base.
    Ensuite j'aimerais mettre ces données récupérées dans un fichier sans le stocker nulle part (si cela est possible bien sur).
    Une fois que j'ai remplis mon fichier, j'aimerais l'afficher à la volée.

    La méthode de patman44 me parait pas mal mais comment je peux récupérer, l'evenement fermeture de fichier?

    Avez vous une autre idée ? Est ce possible ce que je demande ?
    Comment veut tu mettre des données dans un fichier sans le "stocké" ?

    As-tu essayé l'idée que je t'ai soumis ci-dessus ?

  10. #10
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 172
    Points : 43
    Points
    43
    Par défaut
    Merci pour ta réponse pynouz mais je n'utilise pas de richtextbox.
    Mais je vais voir avec mon client si je peux afficher le retour dans une zone et avec l'aide d'un bouton l'enregistrer.

    Mais n'existe t il pas une autre méthode

  11. #11
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 196
    Points : 197
    Points
    197
    Par défaut
    voici comment savoir si le fichier est ouvert :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    FileStream fichier_ouvert = File.Open("nom_fichier", FileMode.Open, FileAccess.ReadWrite, FileShare.None);
    //Tant que le fichier est ouvert tu ne fait rien
    while (fichier_ouvert != null) ;
    Une fois sorti de la boucle, tu supprime le fichier.

    je ne l'ai pas testé mais ça devrait fonctionner

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 22
    Points : 28
    Points
    28
    Par défaut
    Je comprends pas pourquoi une méthode comme ceci ne te conviens pas :

    1) Je récupère les donnés de la base
    2) Je les stocks dans une String (qui a les mêmes propriétés qu'un fichier texte)
    3) J'affiche la String quand je veux ... Car c'est une string
    4) Le Garbage collector s'occupe de la supprimer

  13. #13
    Membre éclairé
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Points : 674
    Points
    674
    Par défaut
    C'est quoi l'intérêt de vouloir utiliser un fichier qui n'est pas enregistré? Pourquoi ne pas laisser en mémoire tes données?
    Comment vas-tu afficher ton "fichier"? C'est du texte simple? C'est avec quelle techno (WPF/Sl/ASP???)


    Citation Envoyé par Naruto_kun Voir le message
    Je vous re-explique ce que j'aimerais faire.

    Lorsque je clique sur un bouton, j'effectue un traitement qui me récupère des données stockées en base.
    Ensuite j'aimerais mettre ces données récupérées dans un fichier sans le stocker nulle part (si cela est possible bien sur).
    Une fois que j'ai remplis mon fichier, j'aimerais l'afficher à la volée.

    La méthode de patman44 me parait pas mal mais comment je peux récupérer, l'evenement fermeture de fichier?

    Avez vous une autre idée ? Est ce possible ce que je demande ?

  14. #14
    Membre éprouvé Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Points : 1 188
    Points
    1 188
    Par défaut
    Bonjour,

    Je pense que tu veux parler des fichiers mappés en mémoire :

    http://msdn.microsoft.com/en-us/library/ms810613.aspx

    edit :
    en c# http://msdn.microsoft.com/fr-fr/library/dd997372.aspx

    Bon dév.

Discussions similaires

  1. Réponses: 21
    Dernier message: 05/06/2006, 10h49
  2. Lots DTS : créer un fichier texte ...
    Par steufleg dans le forum Windows
    Réponses: 2
    Dernier message: 08/02/2006, 18h07
  3. Créer un fichier texte
    Par Fedaykin7 dans le forum Langage
    Réponses: 7
    Dernier message: 27/01/2006, 14h26
  4. Comment créer un fichier texte?
    Par Crazynoss dans le forum ASP
    Réponses: 2
    Dernier message: 08/05/2005, 19h53
  5. Instruction pour créer un fichier text ???
    Par Soulsurfer dans le forum Langage
    Réponses: 2
    Dernier message: 06/08/2002, 11h17

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