Leadtools.Dicom.Common Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
LoadXml(DicomDataSet,String,DicomDataSetLoadXmlFlags,LoadXmlBeforeElementCallback,LoadXmlAfterElementCallback) Method
See Also 
Leadtools.Dicom.Common.Extensions Namespace > DicomExtensions Class > LoadXml Method : LoadXml(DicomDataSet,String,DicomDataSetLoadXmlFlags,LoadXmlBeforeElementCallback,LoadXmlAfterElementCallback) Method



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 Leadtools.Dicom.DicomElement after it has been added to the Leadtools.Dicom.DicomDataSet.
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 Leadtools.Dicom.DicomElement after it has been added to the Leadtools.Dicom.DicomDataSet.
Loads the contents of a DICOM encoded xml file

Syntax

Visual Basic (Declaration) 
<ExtensionAttribute()>
Overloads Public Shared Sub LoadXml( _
   ByVal ds As DicomDataSet, _
   ByVal fileName As String, _
   ByVal xmlFlags As DicomDataSetLoadXmlFlags, _
   ByVal cbBefore As LoadXmlBeforeElementCallback, _
   ByVal cbAfter As LoadXmlAfterElementCallback _
) 
Visual Basic (Usage)Copy Code
Dim ds As DicomDataSet
Dim fileName As String
Dim xmlFlags As DicomDataSetLoadXmlFlags
Dim cbBefore As LoadXmlBeforeElementCallback
Dim cbAfter As LoadXmlAfterElementCallback
 
DicomExtensions.LoadXml(ds, fileName, xmlFlags, cbBefore, cbAfter)

Parameters

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 Leadtools.Dicom.DicomElement after it has been added to the Leadtools.Dicom.DicomDataSet.

Example

This example will load a sample DICOM dataset, then save it as an xml file (with no binary data), and then reload the xml file into a DicomDataSet object

Visual BasicCopy Code
Public Sub LoadXmlExample()
    Dim dicomFileNameIn As String = LeadtoolsExamples.Common.ImagesPath.Path & "IMAGE3.dcm"
    Dim xmlFileNameOut As String = LeadtoolsExamples.Common.ImagesPath.Path & "test.xml"

    ' Initialize DICOM engine
    DicomEngine.Startup()

    Dim ds As DicomDataSet = 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
    Dim xmlFlags As DicomDataSetSaveXmlFlags = DicomDataSetSaveXmlFlags.IgnoreBinaryData Or DicomDataSetSaveXmlFlags.TrimWhiteSpace Or 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()
End Sub
C#Copy Code
public void LoadXmlExample()
{
   string dicomFileNameIn = LeadtoolsExamples.Common.ImagesPath.Path + "IMAGE3.dcm";
   string xmlFileNameOut = LeadtoolsExamples.Common.ImagesPath.Path + "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();
}

Remarks

Use this method to read the contents of a DICOM xml file. The DICOM xml file can be created using DicomExtensions.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 the 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 Leadtools.Dicom.DicomElement themselves can be modified after they have been added to the Leadtools.Dicom.DicomDataSet by passing the optional LoadXmlAfterElementCallback delegate. For more information on this, see the documentation and example for LoadXmlAfterElementCallback.

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also

Leadtools.Dicom.Common requires a Document or Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features