menu
  Home  ==>  articles  ==>  colibri_helpers  ==>  u_c_file_name   

u_c_file_name - John COLIBRI.


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_nameclass(c_basic_object)
                        public
                          m_drivestring;
                          m_pathstring;
                          m_namestring;
                          m_extensionstring;

                          m_complete_namestring;

                          constructor create_file_name(p_namep_drivep_pathp_file_namep_extensionstring); Virtual;

                          procedure compute_complete_name;
                          procedure decompose;
                          procedure change_extension(p_extensionString);
                          procedure change_file_and_extension_name(p_file_and_extension_nameString);
                          procedure change_file_name_only(p_new_file_nameString);
                          procedure display_name_parts;
                          function f_drive_and_pathString;
                      end;

    function f_c_file_name(p_namep_drivep_pathp_file_namep_extensionstring): c_file_name;
    function f_c_complete_file_name(p_namep_complete_namestring): 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 le développement de projets (nouveaux projets, maintenance, audit, migration BDE, migration Xe_n, refactoring) pour ses clients, le conseil (composants, architecture, test) 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, programmation objet, Services Web, Tcp/Ip et UML qu'il anime personellement tous les mois, à Paris, en province ou sur site client.
Created: jan-04. Last updated: mar-2020 - 250 articles, 620 .ZIP sources, 3303 figures
Contact : John COLIBRI - Tel: 01.42.83.69.36 / 06.87.88.23.91 - email:jcolibri@jcolibri.com
Copyright © J.Colibri   http://www.jcolibri.com - 2001 - 2020
Retour:  Home  Articles  Formations  Développement Delphi  Livres  Pascalissime  Liens  Download
l'Institut Pascal

John COLIBRI

+ Home
  + articles_avec_sources
    + bases_de_donnees
    + web_internet_sockets
    + services_web_
    + prog_objet_composants
    + office_com_automation
    + colibri_utilities
    + uml_design_patterns
    + graphique
    + delphi
    + outils
    + firemonkey
    + vcl_rtl
    + colibri_helpers
      – u_types_constants
      – u_strings
      – u_loaded
      – u_c_basic_object
      – u_c_display
      – u_dir
      – u_file
      – u_display_hex
      – u_c_file_name
      – u_c_basic_file
      – u_c_log
      – u_c_line
      – handle_files
      – u_c_path_segments
      – u_c_text_file
      – u_c_direct_acccess
      – u_c_string_file
      – u_c_file_of
    + colibri_skelettons
    + admin
  + formations
  + developpement_delphi
  + présentations
  + pascalissime
  + livres
  + entre_nous
  – télécharger

contacts
plan_du_site
– chercher :

RSS feed  
Blog