il y a t'il une fct qui permette de recuperer le nom d'un fichier sans son extention ! ?
exemple:
fichierdeveloppez.com ----> fichierdeveloppez
merci à celui qui me trouvera la solution sans passer par des boucles à la con
amicalement
sam
Version imprimable
il y a t'il une fct qui permette de recuperer le nom d'un fichier sans son extention ! ?
exemple:
fichierdeveloppez.com ----> fichierdeveloppez
merci à celui qui me trouvera la solution sans passer par des boucles à la con
amicalement
sam
Salut
ExtractFileName -> fichier + extention
ExtractFileExt -> extention
Donc copy de filename - la taille de l'extention = le nom du fichier
Ce qui nous donne: Copy(1,FileName,Length(FileName)-Length(Ext));
Bon Dev @+
cool et en 10 minutes on me repond !
merci à toi pour ton aide !
amicalement,
:lol: sam :lol:
Y il a encore plus simple
Code:
1
2
3
4 var FileName : string; res : string; FileName := 'Monfichier.ext'; res := changeFileExt(FileName,'');
je test !
pas tous à la fois :)
ChanFileExt est pas mal non plus.
Je ne la connaissais pas !
c'est cool ça marche !
merci encore à vous deux !
Moi non plus je ne connaissais pas la fonction ChangeFileExt !
Cool !!! :D
On en apprend tous les jours !
:P :!:
Pense à mettre un p'tit [clos] ou [résolu]
Amicalement
Encore une autre méthode (sans variable autre que le nom de fichier)
En une ligne ! En fait, on défini la taille de la chaine de caratère à sa taille moins la taille de l'extension.Code:
1
2 SetLength(MaVariable,length(MaVariable) - length(ExtractFileExt(MaVariable));
Bon développement !
J'écris une procédure qui pourra recuper le nom d'un fichier image bmp dans un champ BLOB d'une base de données créée. Mais j'ai des problèmes a l'affichage de l'image.
Dans la procédure Fichier designe le nom du champ Blob et NOM designe le nom du champ image.Code:
1
2
3
4
5
6
7
8
9
10
11
12 Var SPath : String; With Table do begin //Récupération du nom du fichier Spath:=ExtractFilePath(Application.ExeName)+ FieldByName('Nom').AsString ; // sauvegarde du fichier TBlobField(FieldByName('Fichier')).SaveToFile(sPath); end; Image1.Picture.LoadFromFile('sPath');
J'ai le message suivant : le nom du format de l'image n'est pas spécifié.
Fichier
Salut,
yendre merci d'utiliser les balises codes.
Pour info le tag :resolu: je trouve en bas de la page de consultation des messages.
Remplacer
ParCode:Image1.Picture.LoadFromFile('sPath');
ou si ton champ "nom" ne contient pas d'extension et que ton fichier est de type "bmp"Code:Image1.Picture.LoadFromFile(sPath);
Code:Image1.Picture.LoadFromFile(sPath+'.bmp');
Une autre à base de SetLength mais plus rapide (à l'exécution) :
Code:SetLength(MaVariable, LastDelimiter('.', MaVariable)-1);
pour YENDRE
Assure toi que
a) le SPath contient bien un "\" séparateur du Path et du Nom de fichier
b) le Nom de fichier contient bien une Extension (genre .BMP , .JPG )
Pour cela, rien ne vaux un bon débugging en tracant les variables locales (en subdivisant ton string) :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 Var SPath , S1 , S2 : String; With Table do begin //Récupération du nom du fichier S1 := ExtractFilePath(Application.ExeName) ; S2 := FieldByName('Nom').AsString ; Spath:= S1 + S2 ; // sauvegarde du fichier TBlobField(FieldByName('Fichier')).SaveToFile(sPath); end; Image1.Picture.LoadFromFile( SPath); // une VARIABLE , pas un String !!!
Bonjour à tous,
la réponse à la question semble être résolu mais je ne vois pas du tout où je peux mettre les lignes de code proposées.:cry:
Et oui ce n'est pas toujours facile d'être novice...
si quelqu'un pouvait m'éclairer, cela m'aiderai fortement.:calim2: