gibts in c++ sowas wie extractfilepath oder so ?

damasta

Grünschnabel
Ich würde gerne folgende funktion haben die mir aus einem pfad mit datei nur den pfad ausgibt also aus C:\windows\dreckswindows.exe nur C:\windows so als beispiel.
 
Es gibt nur eine Funktion, wo Du Pfad, Laufwerk und Dateinamen sowie Extension splitten kannst! Für Dein Beispiel müsstest Du die Verzeichnisse manuell trennen.

Hier mal ein Beispiel für _splitpath()

Code:
/* MAKEPATH.C */

#include <stdlib.h>
#include <stdio.h>

void main( void )
{
   char path_buffer[_MAX_PATH];
   char drive[_MAX_DRIVE];
   char dir[_MAX_DIR];
   char fname[_MAX_FNAME];
   char ext[_MAX_EXT];

   _makepath( path_buffer, "c", "\\sample\\crt\\", "makepath", "c" );
   printf( "Path created with _makepath: %s\n\n", path_buffer );
   _splitpath( path_buffer, drive, dir, fname, ext );
   printf( "Path extracted with _splitpath:\n" );
   printf( "  Drive: %s\n", drive );
   printf( "  Dir: %s\n", dir );
   printf( "  Filename: %s\n", fname );
   printf( "  Ext: %s\n", ext );
}

Ausgabe:
Code:
Path created with _makepath: c:\sample\crt\makepath.c

Path extracted with _splitpath:
  Drive: c:
  Dir: \sample\crt\
  Filename: makepath
  Ext: .c
 
wenn ich mich recht erinnere, dann gibt es im borland c++ builder eine funktion, die sogar wirklich ExtractFilePath() heisst. ;)
das ist dann allerdings kein ansi-c++, sondern gehört zur vcl (oder doch zum windows api?).
 
ich kenn die extractfilepath()-funktion auch nur aus delphi, aber der c++ builder ist zu ungefähr 99% identisch - nur die sprache dahinter ist anders.
 

Neue Beiträge

Zurück