DCMTK:将DICOM文件写入内存

时间:2015-02-14 23:02:50

标签: dicom dcmtk

我正在使用DCMTK将DICOM文件写入磁盘,这非常有效。所以,我简要地做了如下的事情:

DcmDataset * ds = image->dcm_file_format->getDataset();
// Modify DICOM as needed...
DcmFileFormat file_format(ds);
file_format.saveFile(filename);

这很有效。但是,我想将内容写入一些内存缓冲区。所以,我想做点如下的事情:

char * buffer = new char[file_length];

然后以某种方式使用file_format写入此缓冲区而不是文件。我看到DcmFileFormat中有一个'write'方法,但无法弄清楚如何使用它,我可以指定自己的字节数组来写入。

1 个答案:

答案 0 :(得分:0)

您可以查看Orthanc的源代码,这是一个用于医学成像的轻量级供应商中性档案。 Orthanc将其DICOM实例写入方法std::string中的内存缓冲区(Orthanc::FromDcmtkBridge::SaveToMemoryBuffer())。这是direct link to this method