Avatar billede bundgaard Nybegynder
06. januar 2005 - 12:19 Der er 8 kommentarer og
1 løsning

Oprette en fil?

Hej

Jeg sidder og laver et C-projekt, men jeg kan ikke lige lure, hvordan man opretter en ny fil i C:\, som man selv navngiver (Via brugerinput, der bliver gemt i en streng)

Jeg har googlet, men jeg har ikke kunnet finde noget :/

Hjælp mig :D
Avatar billede arne_v Ekspert
06. januar 2005 - 12:44 #1
FILE *fp;
char fnm[1000];
...
// læs ind i fnm
...
fp = fopen(fnm, "w");
Avatar billede bundgaard Nybegynder
06. januar 2005 - 12:53 #2
Det virker jo glimrende :)

Hvordan får man den til at oprette den i C:\?

Altså helt ude i roden.
Avatar billede bundgaard Nybegynder
06. januar 2005 - 12:53 #3
Og evt. hvordan får man filendelsen til at være txt som default?
Avatar billede bundgaard Nybegynder
06. januar 2005 - 12:56 #4
Undskyld jeg spammer :D

Men de to sidste punkter er ikke vigtige, så hvis det er vildt besværligt, så behøver du/i ikke lave det :)
Avatar billede arne_v Ekspert
06. januar 2005 - 13:03 #5
FILE *fp;
char fnm[1000];
char realfnm[1000];
...
// læs ind i fnm
...
sprintf(realfnm,"C:\\%s.TXT",fnm);
fp = fopen(realfnm, "w");

vil ved indlæsning af ABC give C:\ABC.TXT
Avatar billede bundgaard Nybegynder
06. januar 2005 - 13:03 #6
Arh nevermind, man skal bare skrive c:\test.txt i selve programmet :D Det må jeg jo skrive i manualen så.

Smider du et svar?
Avatar billede arne_v Ekspert
06. januar 2005 - 13:04 #7
svar
Avatar billede bundgaard Nybegynder
06. januar 2005 - 13:04 #8
Okay, der var du lige for hurtig for mig :) Meget fint svar, jeg takker!
Avatar billede arne_v Ekspert
06. januar 2005 - 13:06 #9
FILE *fp;
char fnm[1000];
char realfnm[1000];
...
// læs ind i fnm
...
if(strstr(fnm,":")!=NULL)
{
    strcpy(realfnm,"");
}
else
{
    strcpy(realfnm,"C:\\");
}
strcat(realfnm,fnm);
if(strstr(fnm,".")!=NULL)
{
  /* ingenting */
}
else
{
  strcat(realfnm,".TXT");
}
fp = fopen(realfnm, "w");

vil have default værdier.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester