public static void SaveXml(
this DicomDataSet ds,
string fileName,
DicomDataSetSaveXmlFlags xmlFlags,
SaveXmlCallback cb
)
[ExtensionAttribute()]
public:
static void SaveXml(
DicomDataSet^ ds,
String^ fileName,
DicomDataSetSaveXmlFlags xmlFlags,
SaveXmlCallback^ cb
)
ds
The contents of this DataSet to be saved
fileName
The name of the output XML file
xmlFlags
Flags that affect how binary data and other information is saved in the XML output file
cb
Optional callback that allows you to change the element names, attributes, and values of the XML output file
Use this method to export a DicomDataSet as a human-readable XML file. By default, all binary data is written using Base64 encoding, but this behavior can be modified by passing appropriate DicomDataSetSaveXmlFlags
Pass the DicomDataSetSaveXmlFlags.NativeDicomModel flag to save as the 'Native DICOM Model' XML format described in PS3.19.A.1 of the DICOM Specification. One of the following flags can be used together with the DicomDataSetSaveXmlFlags.NativeDicomModel flag to control how binary data is written. If DicomDataSetSaveXmlFlags.NativeDicomModel, is not also included, all of the following flags are ignored. Callers should only pass one of the three flags. If more than one of the flags is passed, precedence is given in the order that they appear below.
If none of these three flags is passed, the default behavior is DicomDataSetSaveXmlFlags.BulkDataUuid. The output XML file can be customized by passing the optional SaveXmlCallback delegate. For more information on this, see the documentation and example for SaveXmlCallback.
using Leadtools.Dicom;
using Leadtools.Dicom.Common;
using Leadtools.Dicom.Common.Extensions;
using Leadtools;
using Leadtools.Dicom.Common.Linq.BasicDirectory;
using Leadtools.Dicom.Common.DataTypes;
using Leadtools.Codecs;
public void LoadXmlExample()
{
string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "image3.dcm");
string xmlFileNameOut = Path.Combine(LEAD_VARS.ImagesDir, "test.xml");
// Initialize DICOM engine
DicomEngine.Startup();
DicomDataSet ds = new DicomDataSet();
// Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None);
// Save as XML with no binary data
// For the demo, keep the XML output file size small by skipping the pixel data
DicomDataSetSaveXmlFlags xmlFlags =
DicomDataSetSaveXmlFlags.IgnoreBinaryData |
DicomDataSetSaveXmlFlags.TrimWhiteSpace |
DicomDataSetSaveXmlFlags.TagWithCommas;
ds.SaveXml(xmlFileNameOut, xmlFlags);
// Now reload the XML file.
// Note that there will not be an image because we skipped the pixel data in the save
ds.LoadXml(xmlFileNameOut, DicomDataSetLoadXmlFlags.None);
DicomEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
LoadXml(DicomDataSet,String,DicomDataSetLoadXmlFlags) Method
LoadXml(DicomDataSet,Stream,DicomDataSetLoadXmlFlags) Method
[SaveXml(DicomDataSet,String,DicomDataSetSaveXmlFlags,SaveXmlCallback)Method
SaveXml(DicomDataSet,Stream,DicomDataSetSaveXmlFlags,SaveXmlCallback) Method
SaveXml(DicomDataSet,String,DicomDataSetSaveXmlFlags) Method
SaveXml(DicomDataSet,Stream,DicomDataSetSaveXmlFlags) Method
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document