objet CStdioFile - Programmation
Marsh Posté le 18-02-2002 à 09:49:39
en faite j'avais deja poser la question enfin pas tout a fait la
meme
je fesait une recherche dans le fichier jusqu'a la rencontre CR LF mais avec un objet CStdioFile
Donc tu me dit d'utiliser l'objet CFile alors.Je fesais avant:
//ouverture du fichier sortie en lecture
if(FileOut.Open(nomfichier, (CFile::modeRead)) == 0)
{
ret=0;
}
else
{
//boucle de lecture du fichier
while(!feof(FileOut.m_pStream))
{
FileOut.ReadString(str);
rec.SetString(str,VT_BSTR);
sfDB34.AddNewRecord();
sfDB34.MoveLast();
sfDB34.SetItem("ID", (COleVariant) rec);
}
FileOut.Close();
syncSession.AddLogEntry("fin d'ecriture du fichier \r\n" );
J'ai juste a modifier la boucle while?
Marsh Posté le 18-02-2002 à 10:20:21
c le caractère "|" ou le caractère de fin de ligne sur lequel tu veux te baser !?
Marsh Posté le 18-02-2002 à 10:35:15
en faite avant je voulais le caractere de fin de ligne mais finalement c le caractere "|" que je me suis basé et finalement j'ai trouver.J'ai fait ca:
if(FileOut.Open(nomfichier, (CFile::modeRead)) == 0)
{
//il n'y a pas de fichier à prendre , ce n'est pas un problème
ret= 0;
}
else
{
//boucle de lecture du fichier
while(!feof(FileOut.m_pStream))
{
FileOut.ReadString(str);
ii=jj=0;
for (;
{
jj=str.Find("|",ii);
if (jj<0)
break;
rec.SetString( str.Mid(ii,jj-ii),VT_BSTR);
sfDB34.AddNewRecord();
sfDB34.MoveLast();
sfDB34.SetItem("DATA", (COleVariant) rec );
ii=jj+1;
}
}
FileOut.Close();
syncSession.AddLogEntry("fin d'ecriture du fichier \r\n" );
Marsh Posté le 18-02-2002 à 08:59:10
salut,
est t-il possible de faire une boucle qui parcour un fichier texte est que a chaque fois que je rencontre le caractere "|" je
stock ce que j'ai lu