|
u_c_file_name - John COLIBRI.
|
- mots clé: nom de fichier - utilitaire
- logiciel utilisé: Windows 98, Delphi 5.0
- matériel utilisé: Pentium 500Mhz, 128 M de mémoire
- champ d'application: Delphi 1 à 6 sur Windows, Kylix
- niveau: débutant en Pascal et Delphi
- uses: u_c_basic_object, u_loaded, u_dir, u_c_display,
(u_c_log, u_strings, u_types_constants, u_c_basic_file)
- plan:
1 - Introduction
La classe c_file_name a pour but de disséquer un nom de fichier.
Les primitives du type ExtractPath ont un but similaire, mais ne me donnaient
pas fondamentalement les 4 composantes du fichier: le lecteur, le chemin, le
nom et l'extension.
Cette classe est lourde pour une si maigre tâche, mais elle me débarrasse de
ces corvées de triturages de noms. Et c'est une classe pour éviter d'avoir à
appeler des fonctions qui font le même travail à chaque fois.
2 - Utilisation
2.1 - Interface
L'interface est la suivante:
type c_file_name= class(c_basic_object)
public
m_drive: string;
m_path: string;
m_name: string;
m_extension: string;
m_complete_name: string;
constructor create_file_name(p_name, p_drive, p_path, p_file_name, p_extension: string); Virtual;
procedure compute_complete_name;
procedure decompose;
procedure change_extension(p_extension: String);
procedure change_file_and_extension_name(p_file_and_extension_name: String);
procedure change_file_name_only(p_new_file_name: String);
procedure display_name_parts;
function f_drive_and_path: String;
end;
function f_c_file_name(p_name, p_drive, p_path, p_file_name, p_extension: string): c_file_name;
function f_c_complete_file_name(p_name, p_complete_name: string): c_file_name;
|
Et:
- create_file_name: reçoit les 4 composantes du nom de fichier et calcule le
nom complet.
- compute_complete_name: calcule le nom complet à partir des 4 parties
- decompose: dissèque le nom en 4 parties
- change_extension: change l'extension. Pour changes .ED en .~ED, par exemple
- change_file_and_extension_name: change à la fois le nom et l'extension
- change_file_name_only: seul le nom du fichier (pas l'extension) est modifié
- display_name_parts: affiche les composantes du nom
- f_drive_and_path: retourne les 2 premières composantes du nom (par exemple
c:\program\)
Deux fonctions globales évitent d'avoir à déclarer une locale pour manipuler
des noms:
- f_c_file_name: reçoit les 4 composantes, et retourne un objet c_file_name.
Par exemple:
WITH f_c_file_name('intro', 'c', l_path, 'presentation', 'pas') DO
BEGIN
...
Free;
END;
- f_c_complete_file_name: reçoit le nom complet et retourne un objet
c_file_name
2.2 - Répertoires
L'unité est prévue pour être placée dans:
C:
programs
colibri_helpers
classes
Vous pouvez naturellement changer cette organisation par Projet | Options |
Directories
2.3 - Directives de compilation
Les directives de compilation sont:
- R+ (vérification des intervalles)
- S+ (vérification de la pile)
- pas d'optimisation
3 - Programmation
Cette classe ne fait que des manipulations de chaînes pour disséquer les noms
de fichiers ou les reconstituer.
4 - Améliorations
5 - Télécharger
Vous pouvez télécharger:
Avec les mentions d'usage:
- j'apprécie tous les commentaires, remarques ou critiques
- signalez-moi les bugs que vous trouverez.
L'auteur
John COLIBRI est passionné par le développement
Delphi et les applications de Bases de Données. Il a écrit de nombreux livres
et articles, et partage son temps entre la
développement de projets pour
ses clients, le conseil et la formation. Son site contient des articles
avec code source, ainsi que le programme et le calendrier des
stages
de formation Delphi, base de données, Ado.Net, Asp.Net et UML qu'il
anime personellement tous les mois, à Paris, en province ou sur site client.
|