Convertion de fichier texte dans une boite de dialog

Soyez le premier à donner votre avis sur cette source.

Vue 5 632 fois - Téléchargée 311 fois

Description

Bon c une petite appli bebete qui transforme un fichier de points de type X Y Z
pour le rendre lisible par un autre programme via une boite de dialogue MFC.
Donc concretement pour chaque ligne X Y Z du fichier d'entrée le fichier de sortie sera de la forme
[PT_i]
1=X,Y,Z,0.0,0.0,0.0
DT1=0.0,0.0,0.0
RT1=0.0
RB1=0.0

Le prog fonctionne mais je vous previens, la fonction On_Save mélange les genres. avec les objets fstream et FILE

Source / Exemple :


void CDlg_textDlg::OnSave() 

FILE *fp;
int nFileLong;
double X,Y,Z;
	
UpdateData(TRUE); //Force data from Edit box to variable

CFileDialog m_ldFile(FALSE, "pud", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "PRELUDE files (*.pud)|*.pud|All files|*.*||");

	
if (m_ldFile.DoModal() == IDOK)  //Start file dlg box
{
int NumberOfLines=0;
m_sOutputFileName=m_ldFile.GetPathName(); //Get file name
m_fileOut=m_sOutputFileName;
fstream input(m_sFileName,ios::in);
fstream output(m_sOutputFileName,ios::out);
nFileLong = m_stringIn.GetLength();      //Length of text in Edit box
        
NumberOfLines = nFileLong/(3*sizeof(double)); //BEURK!!!
		
for (int i=1;i<=NumberOfLines;i++)
{
input>>X>>Y>>Z;
output<<"[PT_"<<i<<"]"<<
"\nn=1"<< "\n1="<<X<<","<<Y<<","<<Z<<",0.0,0.0,0.0"<< "\nDT1=0.0,0.0,0.0"<<
"\nRT1=0.0"<<
"\nRB1=0.0"<<endl;
}
output.close();
input.close();

//après fstream input( xxx),fp=fopen(xxx)
fp=fopen(m_sOutputFileName,"rb");   //Open file for reading
     
fseek(fp,0,SEEK_END);		 	    //Go to file end 
nFileLong=ftell(fp);			    //Get length
char* sText = new char[nFileLong+1];//reserve string space
fseek(fp,0,SEEK_SET);               //Go to file start 
int j=fread(sText,1,nFileLong,fp);  //Read the characters
sText[j]=0;                         //Set string terminating null
m_stringOut=sText;                  //Put text in Edit box's variable
m_string=m_stringOut;
fclose(fp);  

UpdateData(FALSE);
}

}

Codes Sources

A voir également

Ajouter un commentaire

Commentaire

Messages postés
2
Date d'inscription
jeudi 15 mai 2003
Statut
Membre
Dernière intervention
15 mai 2003

salut les gars,
je sais pas si je peux vous demander un ptit service,
j'ai besoin d'une petite interface graphique en borland cpp;
il me la faut,très urgent,
ça serait un menu simple avec "ouvrir",puis pouvoir parcourir les dossier pour avoir le fichier dont le chemin sera paramètre dans ma fonction decoder(), cette foction sera declencher pas un bouton ,
puis,tj dans le menu,j'ai besoin de spécifier le chemin des fichiers de sorties,
donc en gros,voilà

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.