begin process at 2012 02 08 05:13:19
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de données

 > GÉNÉRATION D'UN FICHIER TEXTE À PARTIR D'UNE BASE DE DONNÉES

GÉNÉRATION D'UN FICHIER TEXTE À PARTIR D'UNE BASE DE DONNÉES


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de données Source .NET ( DotNet ) Classé sous :génération, fichier, txt, bdd Niveau :Débutant Date de création :31/10/2003 Vu :13 634

Auteur : superpa

Ecrire un message privé
Site perso
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Crée un fichier texte sous la forme d'un tableau à partir d'une base de donnée access.

Source

  • using System;
  • using System.Data;
  • using System.Data.OleDb;
  • using System.IO;
  • namespace FromDBToTxt
  • {
  • class FromDBToTxt
  • {
  • [STAThread]
  • static void Main(string[] args)
  • {
  • try
  • {
  • Console.WriteLine("Connexion a la bd");
  • OleDbConnection conn = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb");
  • Console.WriteLine("Execution de la commande");
  • OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Contacts",conn);
  • DataSet ds = new DataSet("Ensemble des contacts");
  • da.Fill(ds, "Contacts");
  • Console.WriteLine("Creation du fichier txt");
  • FileStream fileStream = new System.IO.FileStream(@"c:\contacts.txt",System.IO.FileMode.Create);
  • StreamWriter sw = new StreamWriter(fileStream);
  • Console.WriteLine("Creation des en-têtes");
  • foreach (DataColumn col in ds.Tables["Contacts"].Columns)
  • {
  • sw.Write(col.ColumnName);
  • sw.Write("\t");
  • }
  • sw.Write(sw.NewLine);
  • Console.WriteLine("Ajout des données");
  • foreach(DataRow row in ds.Tables["Contacts"].Rows)
  • {
  • int cnt = ds.Tables["Contacts"].Columns.Count;
  • for(int i = 0; i < cnt; i++)
  • {
  • sw.Write(row[i]);
  • sw.Write("\t");
  • }
  • sw.Write(sw.NewLine);
  • }
  • Console.WriteLine("Ecriture terminée");
  • sw.Close();
  • conn.Close();
  • }
  • catch(Exception exc)
  • {
  • Console.WriteLine(exc.Message);
  • }
  • }
  • }
  • }
using System;
using System.Data;
using System.Data.OleDb;
using System.IO;

namespace FromDBToTxt
{
  class FromDBToTxt
  {
    [STAThread]
    static void Main(string[] args)
    {
      try
      {
        Console.WriteLine("Connexion a la bd");
        OleDbConnection conn = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb");
        Console.WriteLine("Execution de la commande");
        OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Contacts",conn);
                
        DataSet ds = new DataSet("Ensemble des contacts");
        da.Fill(ds, "Contacts");

        Console.WriteLine("Creation du fichier txt");
        
        FileStream fileStream = new System.IO.FileStream(@"c:\contacts.txt",System.IO.FileMode.Create);
        StreamWriter sw = new StreamWriter(fileStream);

        Console.WriteLine("Creation des en-têtes");
        foreach (DataColumn col in ds.Tables["Contacts"].Columns)
        {
          sw.Write(col.ColumnName);
          sw.Write("\t");
        }
        sw.Write(sw.NewLine);
        
        Console.WriteLine("Ajout des données");
        foreach(DataRow row in ds.Tables["Contacts"].Rows)
        {
          int cnt = ds.Tables["Contacts"].Columns.Count;
          for(int i = 0; i < cnt; i++)
          {
            sw.Write(row[i]);
            sw.Write("\t");
          }
          sw.Write(sw.NewLine);
        }

        Console.WriteLine("Ecriture terminée");
        sw.Close();
        conn.Close();
      }
      catch(Exception exc)
      {
        Console.WriteLine(exc.Message);
      }
    }
  }
}

 Conclusion

Ce code n'est certainnement pas parfait: il peut y avoir un problème d'alignement, si la taille des champs dépasse la taille d'une tabulation. Il est évidemment possible de changer celà, si ça vous intéresse.


 Sources du même auteur

Source .NET (Dotnet) ASSOCIER LE RÉSULTATS D'UNE REQUÊTE D'UNE BD À UNE BOÎTE DE ...
Source avec Zip Source avec une capture Source .NET (Dotnet) RECTANGLE QUI SUIT LA SOURIS
Source avec Zip Source .NET (Dotnet) GENERER UN FICHIER XML A PARTIR D'UNE BD
Source avec Zip Source avec une capture Source .NET (Dotnet) GRAPHIQUES SIMPLES

 Sources de la même categorie

Source .NET (Dotnet) ENTITY FRAMEWORK - AVOIR UN INCLUDE TYPÉ par jesusonline
Source avec Zip APPLICATION BASE DE DONNÉES par pretude
Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉATION DE CLASSES MÉTIERS À PARTIR D'UNE BASE DE DONNÉES par sebmafate
Source avec Zip Source avec une capture Source .NET (Dotnet) C# SQLCE DEMO par DanMor498
Source avec Zip EXPORTATION DE FICHIER CSV VERS UNE TABLE SQLSERVER par imothepe_33

 Sources en rapport avec celle ci

Source avec Zip Source .NET (Dotnet) DÉFRAGMENTER UN FICHIER par ShareVB
Source avec Zip Source .NET (Dotnet) SAVOIR QUEL FICHIER EST UTILISÉ PAR TELLE APPLICATION : LA L... par ShareVB
Source avec Zip Source avec une capture Source .NET (Dotnet) GESTIONNAIRE DES TODO DISSEMINES UN PEU PARTOUT DANS VOS COD... par dodo7263
Source avec Zip Source avec une capture Source .NET (Dotnet) [SILVERLIGHT] UN GÉNÉRATEUR INTERACTIF D'ARBRES DE HUFFMAN par loudadyassine
Source avec Zip Source .NET (Dotnet) [WPF] GÉNÉRATEUR DE DOCUMENT XPS MULTIPAGES. par MasterShadows

Commentaires et avis

Commentaire de haccounsoft le 28/12/2003 00:06:41

C 4 Bonne idée que t'as eu de mettre un exemple de liaisons a un fichier Access mé le prob c que t'indiques pas si il faut creer un fichier access pr que ton prog marche et si c le K quelle est la strucutre de la table ?
Voila mé en tt K c qd meme bien sympa de contribuer en fillant des trucs aussi utiles !

PS: Modérateur, dslé pr la langue de Moliere lol

Commentaire de superpa le 30/12/2003 11:20:44

Très bonne remarque.
Dans ce cas-ci, il faut créer un fichier Access DB.mdb et le placer dans le répertoire de l'executable. La requête portera sur la table contacts, quelqu'en soit la structure (SELECT * FROM Contacts).

Vous pouvez bien entendu modifier le code pour prendre en compte votre bd et votre table. Pour ça changez:

OleDbConnection conn = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb"); DB.mdb par votre base et son chemin d'accès

OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Contacts",conn); par votre requête

da.Fill(ds, "Contacts"); contacts par le nom que vous voulez donner à votre dataset.

Si c'est pas assez clair, dites-le

Commentaire de haccounsoft le 30/12/2003 19:57:49

Merci Superpa pour les précisions mais j'ai réussi avant hier soir  à me débrouiller en me creusant un petit peu la cervcelle ! :-)
En fin de compte, c'est assez basique.

Par contre, concernant la liaison avec Oracle (liaison local) j'ai bcp de mal .Et Access, il faut le reconnaitre n'est pas ce qu'il y a de mieux pr respecter les contraintes d'intégrité .
Tu as déja essayé ?

Commentaire de superpa le 05/01/2004 10:51:22

En théorie, il suffit de changer la chaîne de connexion. Mais je n'ai jamais essayer.
Je sais aussi quand dans la version du framework .NET fournie avec VS .NET 2003, il y a un provider optimisé pour Oracle. Faudrait te renseigner

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

fichier txt [ par kedric ] bonjourd comment pouvont nous faire pour ouvrire un fichier txt sans passer par une fenetre showdialog pour aficher le text dans une textbox merci d a Executer.... [ par CracK ] Je cherche à associer à un bouton par exemple la fonction qui me permetterai d'executer un fichier txt, mpg ou autres .... private void button1_Click [C#] Nom de fichier dans un textBox [ par jeffwow ] Donc, j'ouvre un fichier avec OpenFileDailog... jusque là ça va. Ensuite, je voudrais prendre le nom de ce fichier et l'envoyer dans un textBox. tex C# Enregistrer dans un fichier text [ par dib.fred ] voila je voudrai bien pouvoir enregister dans un fichier txt des donnees(string) qui viennent de textBox.je cree un fichier:FileStream fs =new FileSt charger un fichier txt sans opendialogFile [ par gwady ] Bonjour,Voila je voudrais affficher le contenu d'un fichier texte dans une richTextBox. J'ai déjà regardé les aides données à d'autres personnes mais, Lire et Écrire dans un fichier texte [ par Ti_Math ] Jai fait des recherche sur le forum autant dans dll que dans la section IO du forum mais jai pas tout a fait trouver ce que je voulais. (Si c'était dé Acces fichiers... conflits !!! [ par SW_87 ] Bonjour , Je d&#233;veloppe plusieurs petites applications en C# (asp.net) qui &#233;crivent et lisent dans des fichiers txt. Malheureusem Copier un fichier txt situé sur serveur [ par mike97422 ] Bonjour, Je cherche &#224; copier le contenu d'un fichier txt (fic1.txt) situ&#233; sur un serveur, dans un fichier en local&nbsp; (fic2.txt) en &#23 uploader un txt dans un bd access [ par Sead ] Voil&#224; tout est dans le titre, j'aimerais donc uploader un txt ou un xls dans access. Ce qui ouvrirait l'import wizard d'access afin d'importer le [Appli Windows][c#] Lire des infos dans un fichier texte (txt) formaté puis les traités et les exporté sur mysql [ par Julos59 ] Bonjour voila j'ai une question multiple qui se complique au fur rt a mesure :-)Je débute en c# donc ma première partie de question est simple.J'ai un


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,264 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales