2011-08-10 13 views
0

私はCCとDICOMの世界で初めてです。患者名を読み、DICOMDIRファイルの詳細を調べてデータベースに保存しようとしています。私はそれを実行したときにそこには誤差がありませんが、DirectoryRecordSequenceItem「記録」値は、したがって、それはループに入っていない、3行目にはnullを返しているC#でコンソールアプリケーションにDICOMDIRの患者名タグを、C言語でclearcanvasを使用して読む#

enter code here 
{ 

     DicomDirectory reader = new DicomDirectory("DICOMDIR"); 
     reader.Load(@"D:\Sunil\Dataset\Metapex\pix\DICOMDIR"); 
     DirectoryRecordSequenceItem record = reader.RootDirectoryRecord; 
     while (record != null) 
     { 
      String PatientId = record[DicomTags.PatientId]; 
      String PatientName = record[DicomTags.PatientsName]; 
      Console.WriteLine("Id - {0}\n Name - {1}", PatientId, PatientName); 
      record = record.NextDirectoryRecord; 
     } 
     Console.ReadLine();} 

それをやっています。

誰もがnull値を返す理由を助けることができますが、私はブレークポイントnを置くことさえ知ることができません。事前に

おかげ

スニル

答えて

0

これはDICOMDIR内の患者のレベルのディレクトリレコードにアクセスするための正しい方法です。コードが機能するはずです。 DICOMDIR自体が正しくエンコードされていますか?

あなたはreader.Dump()を呼び出して、ディレクトリレコードシーケンスを調べてそこに適切なディレクトリレコードがあるかどうかを調べることができ、それらが解析されているはずです。ディレクトリレコードの実際のポイントが正しいことを確認することは困難ですが、少なくともレコードが存在するかどうかを確認する必要があります。