Loads the contents of a DICOM encoded JSON file.
[ExtensionAttribute()]
public static void LoadJson(
DicomDataSet ds,
string fileName,
DicomDataSetLoadJsonFlags jsonFlags,
LoadJsonBeforeElementCallback cbBefore,
LoadJsonAfterElementCallback cbAfter
)
<ExtensionAttribute()>
Public Overloads Shared Sub LoadJson( _
ByVal ds As Leadtools.Dicom.DicomDataSet, _
ByVal fileName As String, _
ByVal jsonFlags As Leadtools.Dicom.Common.Extensions.DicomDataSetLoadJsonFlags, _
ByVal cbBefore As Leadtools.Dicom.Common.Extensions.LoadJsonBeforeElementCallback, _
ByVal cbAfter As Leadtools.Dicom.Common.Extensions.LoadJsonAfterElementCallback _
)
[ExtensionAttribute()]
public:
static void LoadJson(
Leadtools.Dicom.DicomDataSet^ ds,
String^ fileName,
Leadtools.Dicom.Common.Extensions.DicomDataSetLoadJsonFlags jsonFlags,
Leadtools.Dicom.Common.Extensions.LoadJsonBeforeElementCallback^ cbBefore,
Leadtools.Dicom.Common.Extensions.LoadJsonAfterElementCallback^ cbAfter
)
ds
The Data Set that will be created and populated with the contents of the DICOM JSON input file
fileName
The name of the input JSON file
jsonFlags
Flags that affect whether to ignore binary or all data from the DICOM JSON input file
cbBefore
Optional callback that allows you to modify how the input JSON file elements, 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 JSON file. The DICOM JSON file can be created using SaveJson By default, all binary data is read from the DICOM input JSON file, but this behavior can be modified by passing appropriate DicomDataSetLoadJsonFlags
The way that this method processes the input JSON file elements, and element values can be customized by passing the optional LoadJsonBeforeElementCallback delegate. For more information on this, see the documentation and example for LoadJsonBeforeElementCallback. The DicomElement themselves can be modified after they have been added to the DicomDataSet by passing the optional LoadJsonAfterElementCallback delegate. For more information on this, see the documentation and example for LoadJsonAfterElementCallback.
This example will load a sample DICOM data set, then save it as an JSON file (with no binary data), and then reload the JSON 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 LoadJsonExample()
{
string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm");
string jsonFileNameOut = Path.Combine(LEAD_VARS.ImagesDir, "test.json");
// Initialize DICOM engine
DicomEngine.Startup();
DicomDataSet ds = new DicomDataSet();
// Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None);
// Save as JSON with no binary data
// For the demo, keep the json output file size small by skipping the pixel data
const DicomDataSetSaveJsonFlags jsonFlags = DicomDataSetSaveJsonFlags.IgnoreBinaryData |
DicomDataSetSaveJsonFlags.TrimWhiteSpace;
ds.SaveJson(jsonFileNameOut, jsonFlags);
// Now reload the json file.
// Note that there will not be an image because we skipped the pixel data in the save
ds.LoadJson(jsonFileNameOut, DicomDataSetLoadJsonFlags.None);
DicomEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
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 LoadJsonExample()
Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm")
Dim jsonFileNameOut As String = Path.Combine(LEAD_VARS.ImagesDir, "test.json")
' Initialize DICOM engine
DicomEngine.Startup()
Dim ds As New DicomDataSet()
' Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None)
' Save as JSON with no binary data
' For the demo, keep the json output file size small by skipping the pixel data
Const jsonFlags As DicomDataSetSaveJsonFlags = DicomDataSetSaveJsonFlags.IgnoreBinaryData Or DicomDataSetSaveJsonFlags.TrimWhiteSpace
ds.SaveJson(jsonFileNameOut, jsonFlags)
' Now reload the json file.
' Note that there will not be an image because we skipped the pixel data in the save
ds.LoadJson(jsonFileNameOut, DicomDataSetLoadJsonFlags.None)
DicomEngine.Shutdown()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
LoadJson(DicomDataSet,String,DicomDataSetLoadJsonFlags) Method
LoadJson(DicomDataSet,Stream,DicomDataSetLoadJsonFlags) Method
SaveJson(DicomDataSet,String,DicomDataSetSaveJsonFlags,SaveJsonCallback) Method
SaveJson(DicomDataSet,Stream,DicomDataSetSaveJsonFlags,SaveJsonCallback) Method
SaveJson(DicomDataSet,String,DicomDataSetSaveJsonFlags) Method
SaveJson(DicomDataSet,Stream,DicomDataSetSaveJsonFlags) Method
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET