1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
   |  
class Mp3File
    {
    string filePath; // Chemin du fichier.
    bool isMp3File; // Vrai si le fichier est un mp3.
    Id3v1 id3v1; // tag Id3v1 du fichier "null" le fichier n'a pas de Tag Id3v1
    Id3v2 id3v2; // tag Id3v2 du fichier "null" le fichier n'a pas de Tag Id3v2
 
    Mp3File ( ) : this("");
        {
        }
 
    Mp3File (string filePath)
        {
        this.FilePath = filePath;
        }
 
    public string FilePath
        {
        get ...
        set { this.SetFilePath(value); }
        }
 
    protected void SetFilePath ( string filePath )
        {
        if (filePath non valide)
            {
            this.SetNotMp3File();
            }
        else
            {
            this.filePath = filePath;
            this.FaireLeGrosDuTravail...
            }
        }
 
     protected void SetNotMp3File()
        {
        this.isMp3File= false;
        this.id3v1 = null;
        this.id3v2 = null;
        }
 
    // Un peu de bonus pendant que je suis chaud ;-)
    public bool Id3v1TagExists
        {
        get { return (this.id3v1 != null); }
        set { if (value != this.Id3v1TagExists) {this.FaireEncoreDuTravail...} }
        }
 
    public bool Id3v2TagExists
        {
        get { return (this.id3v2 != null); }
        set { if (value != this.Id3v2TagExists) {this.FaireEncoreDuTravail...} }
        }
 
   } | 
Partager