Loads the contents of a DICOM encoded XML file.
public static void LoadXml(this DicomDataSet ds,string fileName,DicomDataSetLoadXmlFlags xmlFlags,LoadXmlBeforeElementCallback cbBefore,LoadXmlAfterElementCallback cbAfter)
<ExtensionAttribute()>Public Overloads Shared Sub LoadXml( _ByVal ds As DicomDataSet, _ByVal fileName As String, _ByVal xmlFlags As DicomDataSetLoadXmlFlags, _ByVal cbBefore As LoadXmlBeforeElementCallback, _ByVal cbAfter As LoadXmlAfterElementCallback _)
[ExtensionAttribute()]public:static void LoadXml(DicomDataSet^ ds,String^ fileName,DicomDataSetLoadXmlFlags xmlFlags,LoadXmlBeforeElementCallback^ cbBefore,LoadXmlAfterElementCallback^ cbAfter)
ds
The Data Set that will be created and populated with the contents of the DICOM XML input file
fileName
The name of the input XML file
xmlFlags
Flags that affect whether to ignore binary or all data from the DICOM XML input file
cbBefore
Optional callback that allows you to modify how the input XML file elements, attributes, and values are used.
cbAfter
Optional callback that allows you to change the DicomElement after it has been added to the DicomDataSet.
Use this method to read the contents of a DICOM XML file. The DICOM XML file can be created using SaveXml By default, all binary data is read from the DICOM input XML file, but this behavior can be modified by passing appropriate DicomDataSetLoadXmlFlags
The way that this method processes the input XML file elements, attributes, and element values can be customized by passing the optional LoadXmlBeforeElementCallback delegate. For more information on this, see the documentation and example for LoadXmlBeforeElementCallback. The DicomElement themselves can be modified after they have been added to the DicomDataSet by passing the optional LoadXmlAfterElementCallback delegate. For more information on this, see the documentation and example for LoadXmlAfterElementCallback.
This example will load a sample DICOM data set, then save it as an XML file (with no binary data), and then reload the XML file into a DicomDataSet object
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;public void LoadXmlExample(){string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm");string xmlFileNameOut = Path.Combine(LEAD_VARS.ImagesDir, "test.xml");// Initialize DICOM engineDicomEngine.Startup();DicomDataSet ds = new DicomDataSet();// Load an existing DICOM fileds.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 dataDicomDataSetSaveXmlFlags 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 saveds.LoadXml(xmlFileNameOut, DicomDataSetLoadXmlFlags.None);DicomEngine.Shutdown();}static class LEAD_VARS{public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";}
Imports Leadtools.DicomImports Leadtools.Dicom.CommonImports Leadtools.Dicom.Common.ExtensionsImports Leadtools.Dicom.Common.LinqImports Leadtools.Dicom.Common.Linq.BasicDirectoryImports LeadtoolsImports Leadtools.Dicom.Common.DataTypesPublic Sub LoadXmlExample()Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm")Dim xmlFileNameOut As String = Path.Combine(LEAD_VARS.ImagesDir, "test.xml")' Initialize DICOM engineDicomEngine.Startup()Dim ds As DicomDataSet = New DicomDataSet()' Load an existing DICOM fileds.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 dataDim xmlFlags As DicomDataSetSaveXmlFlags = DicomDataSetSaveXmlFlags.IgnoreBinaryData Or DicomDataSetSaveXmlFlags.TrimWhiteSpace Or DicomDataSetSaveXmlFlags.TagWithCommasds.SaveXml(xmlFileNameOut, xmlFlags)' Now reload the XML file.' Note that there will not be an image because we skipped the pixel data in the saveds.LoadXml(xmlFileNameOut, DicomDataSetLoadXmlFlags.None)DicomEngine.Shutdown()End SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
[LoadXml(DicomDataSet,String,DicomDataSetLoadXmlFlags,LoadXmlBeforeElementCallback,LoadXmlAfterElementCallback)Method
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
