Avatar billede kingguro Nybegynder
13. september 2001 - 21:48 Der er 8 kommentarer og
1 løsning

filnavn?

Findes der en procedure ligesom ExtractFileExt som i stedet for at finde filtypen, finder navnet foran punktumet.
Avatar billede zerohero Nybegynder
13. september 2001 - 21:50 #1
mener du extractfilename(string);

ZeroHero
Avatar billede kingguro Nybegynder
13. september 2001 - 21:51 #2
Nej, den finder hele navnet filnavn.jpeg. Jeg skal bruge det så den kun finder filnavn og kopiere .jpeg fra!
Avatar billede dkn Nybegynder
13. september 2001 - 22:01 #3
Hej dette skulle gøre det:

function DropFileExtension(Source: string): string;
var
Src,oldSubStr, NewSubStr: string;
P: integer;
begin
Src := ExtractFileName(Source);
OldSubStr:=ExtractFileExt(src);
NewSubStr:=\'\';

P := Pos(OldSubStr, Src);
if (OldSubStr = \'\') or (OldSubStr = \'\') or (P = 0) or (Src = OldSubStr) then begin
Result := Src;
Exit;
end;
while (P > 0) do begin
delete(Src, P, Length(OldSubStr));
insert(NewSubStr, Src, P);
P := Pos(OldSubStr, Src);
end;
Result := Src;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Edit2.text:=DropFileExtension(\'jason.txt\');
end;


Dennis
Avatar billede zerohero Nybegynder
13. september 2001 - 22:36 #4
jamen så træk dog bare filextractfileext() fra filextractfilename()...

eksempel: når du trykker på knappen åbner opendialog1 og du vælger en tilfældig fil - når du trykker \"ok\", vil du se resultatet i formen\'s caption-bar...

procedure TForm1.Button1Click(Sender: TObject);
var
  s1, s2 : string;
begin
with opendialog1 do
begin
  if execute then
  begin
    s1 := extractfilename(filename);
    s2 := extractfileext(filename);
    if pos(s2,s1) > 0 then
    s1 := copy(s1,0,pos(s2,s1)-1);
    form1.caption := s1;
  end;
end;
end;

ZeroHero
Avatar billede martinlind Nybegynder
13. september 2001 - 22:44 #5
Kære venner det er ikke så svært man bruger bare

ChangeFileExt(ExtractFileName(\'MyImage.jpg\'),\'\');

Så får man en string der indeholder \'MyImage\'

Genialt Enkelt, Ganske Enkelt Genialt !! *GG*

/Martin
Avatar billede zerohero Nybegynder
13. september 2001 - 22:49 #6
MartinLind>> cool!!! :-))
Avatar billede dkn Nybegynder
13. september 2001 - 22:52 #7
Ja ok, det havde jeg nu også tænkt på...
Men jeg bruger altid den function jeg har posted, så declare jeg bare det her some public:
Src,oldSubStr, NewSubStr: string;
Og så har jeg al path information om filen :p

Dennis
Avatar billede martinlind Nybegynder
13. september 2001 - 23:29 #8
DKN >> Det er da spild, du alle funktioner til at få det du skal bruge i delphi, har du overvejet hvor dine programmer fylder 200mb *S*

/MArtin
Avatar billede poull Nybegynder
14. september 2001 - 09:55 #9
jeg plejer at bruge
LastDelimiter(\'.\', \'Filnavn.ext\')
(kan ikke lige huske om det \'.\' til sidst)
Og så kopiere jeg fra start til det Lastdelimiter giver med Copy.
martinlind>> men dit er vidst bedst:)
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