我正在使用GDCM庫創建DICOMDIR文件。我實現爲GDCM文檔顯示的代碼:無法使用GDCM庫創建DICOMDIR文件
http://gdcm.sourceforge.net/html/GenerateDICOMDIR_8cs-example.html
在代碼:
private int GenerateDicomDir(string directory, string outFileName)
{
gdcm.Directory d = new gdcm.Directory();
uint nfiles = d.Load(directory, true);
if (nfiles == 0) return 1;
string descriptor = "Descriptor";
FilenamesType filenames = d.GetFilenames();
gdcm.Trace.DebugOn();
gdcm.DICOMDIRGenerator gen = new DICOMDIRGenerator();
gen.SetFilenames(filenames);
gen.SetDescriptor(descriptor);
if (!gen.Generate())
{
return 1;
}
gdcm.FileMetaInformation.SetSourceApplicationEntityTitle("GenerateDICOMDIR");
gdcm.Writer writer = new Writer();
writer.SetFile(gen.GetFile());
writer.SetFileName(outFileName);
if (!writer.Write())
{
return 1;
}
return 0;
}
該函數返回,並且不產生DICOMDIR文件。我添加了跟蹤調試,但仍然無法調試或獲取任何輸出消息。
有沒有什麼辦法可以爲一堆DICOM文件生成DICOMDIR文件?
我已經添加了你說的並更新了問題部分代碼的最新版本。但是,輸出控制檯中仍然沒有調試消息。 @malat –
我不知道爲什麼你不能在你身邊得到錯誤信息,但我敢打賭,問題在於我發表的原始文章。你的文件名約定是錯誤的(99%的機率),或者你忘了將DCM文件轉換爲明確的小尾端傳輸語法。 – malat
我使用的是1.2.840.10008.1.2.1 uid,它是Explicit VR Little Endian。我的文件名是IM180。 –