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

Visual C++ Discussion :

Deplacer un curseur VC++


Sujet :

Visual C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 41
    Par défaut Deplacer un curseur VC++
    Bonjour a tous,

    Je désire savoir comment il est possible de déplacer un curseur dans un fichier texte sur une même ligne pour y faire des inclusion.

    Mon idée est de sélectionné manuellement la position du début de chaque chaines de caractères puis d'y insérer un caractères de séparation et ce pour chaque ligne du fichier.

    voila le code pour accèder au fichier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    System::Void Form1::button1_Click(System::Object^  sender, System::EventArgs^  e)
    {
    	currForm2->Show();
    	textBox2->Text = Form1::GetValeur();
     
      //Pass the file path and file name to the StreamWriter Constructor.
    	    StreamWriter^ sw = gcnew StreamWriter("C:/textrpl.txt");
     
    	    //Write a line of text.
    	    sw->WriteLine("Hello World!!");
     
     
    	    //Close the file.
    	    sw->Close();
     
     
    }
     
     
     
    System::Void Form1::button2_Click(System::Object^  sender, System::EventArgs^  e)
    {
    		StreamReader ^ sr = gcnew StreamReader("C:/textrpl.txt");
     
                String ^ line;
                // Read and display lines from the file until the end of 
                // the file is reached.
     
    				(line = sr->ReadLine()) ;
    				Form1::textBox11->Text = line;
     
     
    }
    Le but de la manœuvre est de séparer les chaine par des ";". Le fichier qui ainsi formaté subira un Bulk Insert pour une mise à jour de base de données.

    merci.


    EDIT :
    Le nom de la fonction que me premis de placer ou je le desire sur une ligne me suffit.
    Merci ^^

    EDIT :

    En fait je crois que j'ai trouver avec le filestream::seek(position, origine)

    On verra bien

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 41
    Par défaut retest
    Je ne comprend pas le fonctionnement de la fonction. Je l'ai calé dans une boucle for pour definir la position pour chaque ligne mais ca n'a pas l'air de marcher

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    System::Void Form1::button4_Click(System::Object^  sender, System::EventArgs^  e) 
    {
    String^ fileName =  "c:\\textrplbis.txt";
     
     
     
       FileStream^ fileStream = gcnew FileStream( fileName,FileMode::Create );
       try
       {
     
     
          // Set the stream position to the beginning of the file.
    	  fileStream->Seek( 10, SeekOrigin::Begin );
     
          // Write the data to the file.
          fileStream->WriteByte(";");
     
     
       }
       finally
       {
          fileStream->Close();
       }
     
    }
    Voila ou j'en suis pour inserer un ";" a une position donnée

    Personne n'aurai une idée du pourquoi du comment ?

    EDIT :
    En fait dans la classe filestream il n'existe pas de methode permettant d'ecrire dans un fichier un String.
    Mais dans StreamWriter et TextWriter il n'y a pas de methode de positionnement.

    Je reste a disposition de la moindre idée.

  3. #3
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    le mieux pour insérer des valeurs dans un fichier est de réécrire tout le fichier, avec une boucle de parcours sur le premier et les ajouts dans le second

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 41
    Par défaut
    Le problème est que c'est un fichier texte de 200k ligne et sur chaque ligne tous les enregistrements sont collés les uns au autres. Ainsi pour les séparer je pense que ma seul solution est de repérer leurs positions (tous les enregistrements d'une même colonne fait la même longueur).
    Je ne vois pas comment je pourrai procéder avec votre solution.
    Sinon n'y aurai-t-il une meilleur solution dans un autre language?

    Merci

    EDIT : J'ai oublier de preciser que c'est pour faire une importation automatique dans une base SQLSERVER 2k/2k5.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 41
    Par défaut
    Bon apparement en VC++ sans utiliser les MFC ce n'est pas possible.
    Je voulais recreer un genre de fonction Mid.

    Apres moulte hesitation entre java et C#, je m'oriente vers une appli C# et utiliserai la methode substring().

Discussions similaires

  1. processus qui controle le deplacement du curseur
    Par A_B dans le forum Windows XP
    Réponses: 13
    Dernier message: 12/06/2007, 09h53
  2. Réponses: 2
    Dernier message: 09/01/2007, 21h39
  3. Deplacer le curseur pour ecrire en fin de fichier
    Par deathsurfer dans le forum C
    Réponses: 2
    Dernier message: 06/11/2006, 23h23
  4. Deplacer le curseur dans une cellule de DBGrid
    Par Sydaze dans le forum Composants VCL
    Réponses: 6
    Dernier message: 07/11/2005, 16h19
  5. Deplacer un curseur dans un RichEdit sous visual c
    Par tweek dans le forum Windows
    Réponses: 7
    Dernier message: 14/01/2004, 00h29

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