Dateiendung Herrausfinden mit Ansistring??
-
Schau mal in der hilfe unter ExtractFile......
da sollte etwas dabei sein.
-
Ja, mit SubString.
String Vollstring="Hier steht ein Text"; String SubStr=Vollstring.SubString(1,4); // Inhalt: "Hier"
und so kannst du auch die Dateiendung herausfinden:
String Datei="bla.txt"; String Endung; for (int i=Datei.Length();i>0;i--) if (Datei[i]=='.') { Endung=Datei.SubString(i+1,Datei.Length()-(i-1)); break; }
Das ist auch nicht unelegant, wie ich finde, ist ja nicht lang.
-
Spieleprogrammierer schrieb:
Das ist auch nicht unelegant
Im Vergleich zu der von Die Mission angesprochenen Lösung ist das extrem unelegant.
-
wieso? -macht genau das Selbe, es durchsucht den String nach nem Punkt von hinten und kopiert das letzte Stück. Man kann das Ganze natürlich noch in eine Funktion packen, aber wenn man's blos einmal braucht, wozu?
-
... aber wenn man's blos einmal braucht ...
... und genau in so einem Fall würde ich dann doch lieber das ExtractFile... Gedöns in Anspruch nehmen :D:D:D
-
Es gibt bereits eine fertige Funktion, wozu also das Rad nochmal erfinden?
Insbesondere, wenn es statt rund so eckig ist wie deine Lösung.
Tip: AnsiString::LastDelimiter
-
Äähm, Jansen, steh ich jetzt auf Schlauch ***amkopfkratz***
Wieso 'AnsiString::LastDelimiter' ? Ich würde in diesem Fall eher mit 'ExtractFileExt' arbeiten wollen
Naja, hier im Büro ists ziemlich mollig warm. Vielleicht blick ichs ja deswegen nimmer
-
Peter schrieb:
Ich würde in diesem Fall eher mit 'ExtractFileExt' arbeiten wollen
Ich auch, deshalb mein Hinweis auf die fertige Funktion. Aber wenn ich die Extension unbedingt "von Hand" auslesen wollen würde, dann würde ich den Punkt nicht durch Abzählen vom Ende aus sondern mittels LastDelimiter ermitteln wollen.
-
Ah jetzt ja. Jetzt hab ichs auch begriffen was Du meintest *grunz*
-
Danke euch jetzt hab ichs wusste ja gar nicth das es so functionen wie SubStr in C++ auch gibt weil meine Referenz davon gar nichts sagt ;-((
mfg
wdsl
-
... das es so functionen wie SubStr in C++ auch gibt
SubStr gehört zur AnsiString-Klasse und hat mit C++ primär nix zu tun.