我正在创建一个将修改 dicom 标签的控制台应用程序。我将加载单个 dicom 文件并更新 PatientID 标签。
我似乎无法得到任何修改。我能够阅读标签,但更新/添加似乎对我不起作用。以前我在 powershell 上使用过 DICOM ToolKit,它非常简单明了,但我想开始用 c# 进行开发,但到目前为止我失败了。
using System;
using System.IO;
using SpiromicsImporterPrep.FileMethods;
using Dicom;
namespace SpiromicsImporterPrep
{
class Program
{
static void Main(string[] args)
{
string filename = @"Z:\SPIROMICS\Human_Scans\Dispatch_Received\NO_BACKUP_DONE_HERE\MIFAR\FORCE\JH114062-FU4\119755500\Non_Con_FRC__0.75__Qr40__5_7094\IM001139";
var file = DicomFile.Open(filename, readOption: FileReadOption.ReadAll);
var dicomDataset = file.Dataset;
dicomDataset.AddOrUpdate(DicomTag.PatientID, "TEST-PATIENT");
}
}
}
当我使用 ImageJ 或其他 dicom 阅读器查看此文件的 Dicom Header 标记时,我希望在运行代码后,PatientID 标记的值将是“TEST-PATIENT”代码运行没有错误但似乎没有任何更新或在我查看 dicom 标头时更改。