Moriens!
Miten voin ohjelmallani deletoida tiedoston kovalevyltä? Entä kansion sisältöineen?
Toinen kysymys liittyy erääseen pikkuohjelmaan jota yritin tehdä. Eli tarkoituksenani oli erotella tekstitiedostosta lukuja ja summata niitä keskenään. Miten saan luvut eroteltua tekstistä ja talletettua vaikkapa long-tyyppiseen muuttujaan? Jossain sanottiin, että get()-funktiolla, mutta eikö tämä etsi vain yhden merkin kerrallaan?
Miten voin ohjelmallani deletoida tiedoston kovalevyltä? Entä kansion sisältöineen?
Toinen kysymys liittyy erääseen pikkuohjelmaan jota yritin tehdä. Eli tarkoituksenani oli erotella tekstitiedostosta lukuja ja summata niitä keskenään. Miten saan luvut eroteltua tekstistä ja talletettua vaikkapa long-tyyppiseen muuttujaan? Jossain sanottiin, että get()-funktiolla, mutta eikö tämä etsi vain yhden merkin kerrallaan?
Vastaukset 2
Vanhimmat
Tuosta hakemistosta en tiedä mutta Tiedoston saa tuhottua:
WIN32 API DeleteFile:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/deletefile.asp
tai siten system("del file"); mikä lienee huonoin vaihtohto.
Tuo lukujen erotus, en C++:sta tiedä mutta C:llä voisi mennä näin:
Oletetaan että luvut on erotettu välilyönneillä ja siellä voi olla muitakin sanoja.
char buffer [286];
int luku;
char c;
FILE *fp;
while(!feof(fp))
{
fgets(buffer,sizeof(buffer),fp);
c = strtok(buffer," ");
if (c != NULL)
do
{
// yritetään muuttaa merkkijono luvuksi
// oletetaan että desimaali muodossa
if (sscanf(c,"%d",&luku) == 1)
{
Tee jotain luvulle
}
c = strtok(NULL," "); // seuraava sana sama puskuri
} while (c != NULL);
}
Kokeillaan! :)