Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Dateiendung ändern geht nicht

  1. #1
    Registrierter Benutzer Avatar von againsttcpa
    Registriert seit
    21.03.2003
    Ort
    Am Oberlauf der Weser
    Beiträge
    52

    Dateiendung ändern geht nicht

    Ich habe mit folgender Funktion ein Problem:

    Code:
    short constructoutfilename(char *argv1,char *argv2,char *outfilename)
    {
    	char *cptr;
    
      strcpy(outfilename,argv1);
      if ((cptr=strrchr(outfilename,DOT))==NULL) {
        if (argv2 == "dwg") {
          strcat(outfilename,".dwg");	//if input file does not have a .anything extension
          return(1);
        }
        else {
          strcat(outfilename,".dxf");	//if input file does not have a .anything extension
          return(1);
        }
      }
      else {
        if (argv2 == "dwg") {
          strcpy(&cptr[1],"dwg");	//if input file does have a .anything extension
          return(1);
        }
        else {
          strcpy(&cptr[1],"dxf");	//if input file does have a .anything extension
          return(1);
        }
      }
    }
    Eigentlich sollte die Dateiendung entsprechend dem zweiten Parameter geändert werden, es tut sich aber nichts, es wird immer der letzte Else-block ausgeführt.
    Im ersten Parameter wird der Ursprünglich Dateiname übergeben und im zweiten die neue Dateiendung.

    Was mache ich falsch?
    Mandrake 9.1, Kernel 2.4.21, XFree 4.3.0, KDE 3, Kylix 3,
    PIII/500, 256MB, 12+3GB, Modem 56K intern

  2. #2
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    benutze für das vergleichen von strings strcmp
    und nicht '=='.
    oder wechsel von char* auf die string klasse (c++)

    gruß
    Arthur
    ---------
    irc.mrunix.de #mrunix

  3. #3
    Registrierter Benutzer Avatar von againsttcpa
    Registriert seit
    21.03.2003
    Ort
    Am Oberlauf der Weser
    Beiträge
    52
    Danke klappt jetzt hervorragend
    Mandrake 9.1, Kernel 2.4.21, XFree 4.3.0, KDE 3, Kylix 3,
    PIII/500, 256MB, 12+3GB, Modem 56K intern

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •