簡體   English   中英

如何使用 fo-dicom 從 DICOMDIR 中刪除文件

[英]How to remove a file from DICOMDIR using fo-dicom

我使用 fo-dicom 創建了 DICOMDIR,如下所示。

var dicomDir = new DicomDirectory();
var dicomFile = Dicom.DicomFile.Open(dicomFilePath);
dicomDir.AddFile(dicomFile, filePathForDicomDir);
DicomWriteOptions options = DicomWriteOptions.Default;
options.ExplicitLengthSequenceItems = false;
dicomDir.Save(dicomDirPath, options);

我必須從現有的 DICOMDIR 中刪除已添加的文件,但在 DicomDirectory.cs 類中找不到方法。

如何使用 fo-dicom 從 DICOMDIR 中成功刪除文件引用,而不是再次重新創建整個 DICOMDIR?

您是否嘗試過刪除方法?

dicomDir.File.Delete();

你的要求很不尋常。 fo-dicom 未在 DicomDirectory 中提供從現有 DICOMDIR 中刪除條目的方法。

DICOM 中的文件集是不可變的。 此類文件集是一組文件,例如在 CD 上刻錄,然后使用 DICOMDIR 文件進行索引。 那么什么時候應該創建一個 DICOMDIR 呢? 當您有一組文件要刻錄到 CD 上時,您可以為這些文件創建 DICOMDIR 文件。

同樣在內部,DicomDirectoryRecords 是具有相互引用的偏移量的條目列表。 因此,刪除條目意味着在內部完全重建記錄結構。 因此,與重新創建 DICOMDIR 相比,刪除條目並沒有太大的優勢。

需要刪除條目並且無法重新創建 DICOMDIR 的用例是什么? 如果有一個有效的用例,那么你必須在 github 上的 fo-dicom 項目中創建一個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM