FORUM D’ENTRAIDE INFORMATIQUE (FEI)
Site d’assistance et de sécurité informatique

Ecrire dans un fichier binaire

Règles du forum : Entraide concernant la programmation informatique en général, tous langages : recherche ou correction d'un code ou d'une fonction, aide à la réalisation d'un projet...
Pour la programmation web (HTML, CSS, PHP, MySQL...), il est conseillé de s'orienter dans le forum Webmastering.
Merci de lire et de respecter la charte générale du forum.

Répondre

Afin d’empêcher la création automatisée de comptes, nous vous demandons de réussir le défi ci-contre.
Smileys
:D :) :-) ;) :| :( :cry: :cheers: :hourra: :mv: :lol: :mdr: :bonjour: :hello: :jap: :siffle: :bisou: :P :o :x :roll: :good: :bad: :super: :reflexion: :suspect: :? :oops: :peur: :zen: :boude: :bug:

Revue du sujet : Ecrire dans un fichier binaire Étendre la vue

Ecrire dans un fichier binaire

par cerede2000 » jeu. 21 août 2014 14:03
Bonjour,

Pourrais tu être un peu plus précis.
Quelles sont les données à stockés ? (un exemple serait pas mal).

Car écrire dans un fichier binaire ça veut pas dire grand chose
Un fichier .exe est un fichier binaire en autre...

Vu que c'est ton programme, c'est toi qui détermine la manière dont tu stock tes données.

Ecrire dans un fichier binaire

par rattlesnake » lun. 18 août 2014 10:49
Bonjour,

Je travaille sur des fichiers de mesures météorologiques (txt) regroupées en colonnes. Une fois que j'ai extrait chaque colonne pour pouvoir l'utiliser seule, l'entreprise me demande de stocker ces données sous format 16bits dans un fichier binaire. J'aimerais savoir comment faire pour que, en ouvrant mon fichier de base et en le lisant en ASCII je puisse en faire plusieurs fichiers .bin avec la conversion que cela implique ...
Ci-dessous le code correspondant à l'extraction des colonnes de données, mais pour le moment la lecture ET l'écriture se font sous format ASCII ...

#include iostream
#include fstream
#include string


int main()
{
using namespace std;





   ifstream liste("liste_de_fichiers.txt", ios::in);
   
   if(liste)
   {
      string lisligne;
      string filename0, filename1,filename2,filename3,filename4;
      string ligne;
      double doublea,doubleb,doublec,doubled,doublee,doublef;
      double double1, double2, double3, double4, double5, double6;
      
      
      while(getline(liste, lisligne))
      {
            
            liste filename0; //lecture du nom de fichier dans un fichier "liste de fichiers"
            filename1 = "/home/rs/Desktop/eclats/" + filename0 + "_1"; //création du nom du fichier où sera retranscrite la colonne 1
            filename2 = "/home/rs/Desktop/eclats/" + filename0 + "_2"; //colonne 2
            filename3 = "/home/rs/Desktop/eclats/" + filename0 + "_3"; // 3
            filename4 = "/home/rs/Desktop/eclats/" + filename0 + "_4"; // 4
            filename0 = "/home/rs/Desktop/données_modèles/données_modèles/2011/" + filename0; //Nom du fichier de base (avec toutes les colonnes)
            
            ifstream fichier0(filename0.c_str(), ios::in); //fichier lecture
            ofstream fichier1(filename1.c_str(), ios::out); // ecritures
            ofstream fichier2(filename2.c_str(), ios::out);
            ofstream fichier3(filename3.c_str(), ios::out);
            ofstream fichier4(filename4.c_str(), ios::out);

            if(fichier0 fichier1 fichier2 fichier3 fichier4)
               {
                                 
                     fichier0 doublea doubleb doublec doubled doublee doublef; //lecture des 6 colonnes
                     //retranscription d'une colonne par fichier                     
                     fichier1 doublec*100;
                     fichier2 doubled*100;
                     fichier3 doublee*100;
                     fichier4 doublef*100;
                  while(getline(fichier0, ligne))  // tant que l'on peut mettre la ligne dans "contenu"
                  {                     
                                          
                           fichier0 double1 double2 double3 double4 double5 double6;
                           fichier1 double3*100;
                           fichier2 double4*100;
                           fichier3 double5*100;
                           fichier4 double6*100;
                        
                  }
                  //fichiers traités
                  coutfilename0endl;
                  coutfilename1endl;
                  coutfilename2endl;
                  coutfilename3endl;
                  coutfilename4endl;
               }
               else
                  cerr"Impossible d'ouvrir le fichier!1"endl;
         
      }
      
      liste.close();
   }
   else
      cerr"Impossible d'ouvrir le fichier!"endl;

   return 0;
}
Merci d'avance !

hey Eh beh tu vas bien te faire balader par tes co[…]

Aide SEO

Si vous êtes trop à court d'idé[…]

Game

J’ai toujours aimé essayer de nouveau[…]

Game

Ce site m’a impressionné par la quali[…]