Existe t'il une fonction pour retirer des caractères

hysteria74 Messages postés 20 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 24 juin 2005 - 11 mai 2005 à 17:24
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021 - 12 mai 2005 à 20:26
Bonjour,
je voudrais savoir s'il existe une fonction sous Delphi 7 pour retirer les trois derniere lettre d'un chemin connu.

je m'explique
ExpandFileName(NomFichier) me permet d'obtenir le chemin ou se trouve mon fichier que j'ai ouvert auparavant grâce a un opendialog, ce qui donne ca "C:\INSITU\CATALOGS\test.cat".
Et j'aimerais retirer les 4 derniers caractères de ce chemin, comment qu'on fait!!!!!

Merci d'avance.

14 réponses

DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
11 mai 2005 à 19:24
<HR>
var
s:string;
begin
s:=ExpandFileName(NomFichier);
s:=copy(s,1,length(s)-4);
showmessage(s);
end;

<HR>


N'oubliez pas de cliquer sur Réponse acceptée si c'est OK

DrJerome
0
ou alors, plus simple :

1. Si tu veux récupérer l'extension d'un fichier :
s := ExtractFileExt(NomFichier);

2. Si tu veux récupérer les 4 derniers caractères d'une chaîne quelconque :
uses StrUtils;
s := RightStr(Chaine, 4);


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
11 mai 2005 à 20:06
dsl y'a eu un bug...

1. Si tu veux récupérer l'extension d'un fichier :
s := ExtractFileExt(NomFichier);

2. Si tu veux récupérer les 4 derniers caractères d'une chaîne quelconque :
uses StrUtils;
s := RightStr(Chaine, 4);


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
11 mai 2005 à 21:00
Il y a aussi

Delete(s,length(s)-3,4);

Bon Coding ....

ManChesTer.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
11 mai 2005 à 22:02
Tiens, celle-là elle est amusante, surtout si tu ne connais pas d'avance la longueur de l'extension :



SetLength(S, Length(S) - Length(ExtractFileExt(S)));



Bonne prog'



japee
0
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
11 mai 2005 à 23:24
ou celle-là :

SetLength(s,longint(StrRscan(pchar(s),'.')-@s[1]));

mptdr

Bon Coding ....

ManChesTer.
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
11 mai 2005 à 23:39
lol


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
11 mai 2005 à 23:54
Oh la la... lol



Va falloir que je l'étudie de près, celle-là, Manchester !



Bon coding !



japee
0
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
12 mai 2005 à 07:36
Et pourquoi pas :



ChangeFileExt(NomFichier,'');

Ken@vo


<hr size="2" width="100%">
Code, Code, Codec !


http://www.pourflorenceethussein.org/
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
12 mai 2005 à 17:03
Mais enfin, Kenavo...



Pourquoi diable faire simple quand on peut faire compliqué ?



Bien vu, quoi



Bonne prog'



japee
0
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
12 mai 2005 à 17:50
Bah, y en a encore plein comme ca, on peut aussi explorer les api's, lol...

Bon Coding .... ManChesTer.
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
12 mai 2005 à 18:39
Et pourquoi pas, Manchester ?



Il faut dire que j'ai trouvé ton



SetLength(s,longint(StrRscan(pchar(s),'.')-@s[1]));



ach'ment intéressant.



J'y ai passé un petit moment, et quand j'ai compris, ça m'a fait
avancer d'un cran dans la connaissance des pointeurs et de l'adressage
d'un String.



Tiens, ça m'a inspiré (genre et maintenant, travaux pratiques, lol...)
cette fonction pour récupérer seulement le nom du fichier, sans
l'extension :



function NameWithoutExt(S: String): String;

var PosSlash, PosPoint: LongInt;

begin

@S[1];

PosSlash := LongInt(StrRscan(PChar(S), '\') -@S[1]) +2;

PosPoint := LongInt(StrRscan(PChar(S), '.') -@S[1]) +1;

Result := Copy(S, PosSlash, PosPoint -PosSlash);

end;



Bah, ça vaut ce que ça vaut, mais voilà...



Merci pour tes tuyaux (et tes "chipotages" sur mes codes).



Bonne prog'



japee
0
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
12 mai 2005 à 20:26
Pense aux utilisation possibles en unicode... (widestring &co)

La gestion de chaine, aussi rapide en delphi qu'en c... Tien donc ! mdr.

Bon Coding .... ManChesTer.
0
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
12 mai 2005 à 20:26
Pense aux utilisation possibles en unicode... (widestring &co)

La gestion de chaine, aussi rapide en delphi qu'en c... Tien donc ! mdr.

Bon Coding .... ManChesTer.
0
Rejoignez-nous