AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dateiendung ohne Punkt

Ein Thema von Jansteger · begonnen am 24. Jan 2014 · letzter Beitrag vom 25. Jan 2014
Antwort Antwort
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#1

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 17:42
Delphi-Quellcode:
function ExtractFileExtW(pszText: WideString): WideString;
var
  i: integer;
begin;
  Result := pszText;
  if(pos('.',szFilename) > 0) then
    for i := Length(pszText) downto 1 do
      if pszText[i] = '.then begin;
        Result := Copy(pszText, i + 1, Length(pszText));
        Break;
      end;
end;
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)

Geändert von lbccaleb (24. Jan 2014 um 17:54 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 17:44
Delphi-Quellcode:
function ExtractFileExtW(pszText: string): WideString;
var
  i: integer;
begin
  Result := pszText;
  for i := Length(pszText) downto 1 do
    if pszText[i] = '.then begin;
        Result := Copy(pszText, i + 1, Length(pszText));
        break;
    end;
end;
Nein, diese Funktion arbeitet nicht zuverlässig
Code:
C:\Mein.Verzeichnis\DateiOhneEndung
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 17:49
Ja soll ja nur ein Bsp. sein, kann man mit einem ÖffnungsFilter ja ganz leicht korrigieren und kann Sie ja selber noch umbauen..
Außerdem ging es ja um Dateien MIT Endung^^
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 17:58
Außerdem ging es ja um Dateien MIT Endung^^
Eine Funktion sollte auch korrekt funktionieren wenn fehlerhafte oder nicht erwartete Eingaben kommen.
In diesem Fall wäre ein Leerstring korrekt
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 18:15
OkOk^^

Er kann auch einfach die aus der SysUtils Unit umbauen:

Delphi-Quellcode:
uses
  SysUtils;
function ExtractFileExtDotless(const FileName: string): string;
var
  I: Integer;
begin
  I := LastDelimiter('.' + PathDelim + DriveDelim, FileName);
  if (I > 0) and (FileName[I] = '.') then
    Result := Copy(FileName, I+1, MaxInt) else
    Result := '';
end;
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
nuclearping

Registriert seit: 7. Jun 2008
708 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 18:49
Delphi-Quellcode:
var Ext: String;
begin
  Ext := ExtractFileExt('Filename.txt');
  if (Pos('.', Ext) = 1) then
    Delete(Ext, 1, 1);
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Dateiendung ohne Punkt

  Alt 24. Jan 2014, 20:36
Eine Fileextension hat am Anfang einen Punkt oder ist leer.
Die Abfrage auf den Punkt kann man sich also gepflegt sparen.

Ein Copy( Ext, 2 ) ist absolut ausreichend und ohne Schnörkel
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz