Leadtools.Dicom.Common.Extensions Namespace > DicomExtensions Class > LoadXml Method : LoadXml(DicomDataSet,Stream,DicomDataSetLoadXmlFlags,LoadXmlBeforeElementCallback,LoadXmlAfterElementCallback) Method |
[ExtensionAttribute()] public static void LoadXml( DicomDataSet ds, Stream stream, DicomDataSetLoadXmlFlags xmlFlags, LoadXmlBeforeElementCallback cbBefore, LoadXmlAfterElementCallback cbAfter )
'Declaration <ExtensionAttribute()> Public Overloads Shared Sub LoadXml( _ ByVal ds As DicomDataSet, _ ByVal stream As Stream, _ ByVal xmlFlags As DicomDataSetLoadXmlFlags, _ ByVal cbBefore As LoadXmlBeforeElementCallback, _ ByVal cbAfter As LoadXmlAfterElementCallback _ )
'Usage Dim ds As DicomDataSet Dim stream As Stream Dim xmlFlags As DicomDataSetLoadXmlFlags Dim cbBefore As LoadXmlBeforeElementCallback Dim cbAfter As LoadXmlAfterElementCallback DicomExtensions.LoadXml(ds, stream, xmlFlags, cbBefore, cbAfter)
[ExtensionAttribute()] public: static void LoadXml( DicomDataSet^ ds, Stream^ stream, DicomDataSetLoadXmlFlags xmlFlags, LoadXmlBeforeElementCallback^ cbBefore, LoadXmlAfterElementCallback^ cbAfter )
Use this method to read the contents of a DICOM xml file. The DICOM xml file can be created using SaveXml(DicomDataSet,Stream,DicomDataSetSaveXmlFlags,SaveXmlCallback) 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.
Imports Leadtools.Dicom Imports Leadtools.Dicom.Common Imports Leadtools.Dicom.Common.Extensions Imports Leadtools.Dicom.Common.Linq Imports Leadtools.Dicom.Common.Linq.BasicDirectory Imports Leadtools Imports Leadtools.Dicom.Common.DataTypes Public Sub LoadXmlExample2() Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm") Dim dicomFileNameOut As String = Path.Combine(LEAD_VARS.ImagesDir, "test.dcm") ' Initialize DICOM engine DicomEngine.Startup() Dim ds As DicomDataSet = New DicomDataSet() ' Load an existing DICOM file ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None) ' Save as XML to a stream 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 Dim stream As Stream = New MemoryStream() ds.SaveXml(stream, xmlFlags) ' Display contents of stream stream.Flush() stream.Position = 0 Dim sr As StreamReader = New StreamReader(stream) Dim xmlString As String = sr.ReadToEnd() MessageBox.Show(xmlString, "xml version of " & dicomFileNameIn) ' Now reload the xml file from the stream. ' Note that there will not be an image because we skipped the pixel data in the save stream.Seek(0, SeekOrigin.Begin) 'stream.Position = 0; ds.LoadXml(stream, DicomDataSetLoadXmlFlags.None) ds.Save(dicomFileNameOut, DicomDataSetSaveFlags.None) DicomEngine.Shutdown() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
DicomExtensions Class
DicomExtensions Members
Overload List
LoadXml(DicomDataSet,String,DicomDataSetLoadXmlFlags,LoadXmlBeforeElementCallback,LoadXmlAfterElementCallback) Method
LoadXml(DicomDataSet,Stream,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
SaveXmlCallback Delegate
LoadXmlBeforeElementCallback Delegate
LoadXmlAfterElementCallback Delegate