2010-10-01 7 views
1

Je souhaite lire les tags dicom de dicomdir. Comment puis-je vérifier si le fichier est un dicomdir? Maintenant, j'essaie comme ça, mais je sais que certains fichiers n'ont pas dicomdir dans le nom.clearcanvas vérifier si le fichier est un dicomdir

 if (fi_name.Contains("DICOMDIR")) 
      { 


       DicomDirectory fi_dicomdir = new DicomDirectory(fi); 
       fi_dicomdir.Load(fi); 
      } 

Répondre

2

publication NEMA indique que le nom du fichier doit être DICOMDIR. le type de fichier DICOM peut également être identifié par l'ID de classe SOP unique: 1.2.840.10008.1.3.10 qui est réservé pour ce type de fichier.

une copie douce de la norme se trouve here

2

Depuis un DICOMDIR est une instance spécialisée d'un fichier partie DICOM 10, vous pouvez lire juste à l'étiquette SOP support de stockage de classe UID du fichier (qui seulement être quelques centaines d'octets du fichier), puis déterminez si le fichier est un DICOMDIR. Code comme cela fonctionne:

 

DicomFile file = new DicomFile(fi); 
file.Load(DicomTags.MediaStorageSopClassUid, DicomReadOptions.Default); 
if (file.MediaStorageSopClassUid.Equals(SopClass.MediaStorageDirectoryStorageUid)) 
{ 
    DicomDirectory fi_dicomdir = new DicomDirectory("AETITLE"); 
    fi_dicomdir.Load(fi);     
} 
 

Cela devrait effectuer une recherche rapide et serait infaillible moyen de déterminer si le fichier est un DICOMDIR.

Questions connexes