Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.3.28
|
Leadtools.Dicom.Common.Extensions Namespace > DicomExtensions Class > SaveJson Method : SaveJson(DicomDataSet,String,DicomDataSetSaveJsonFlags) Method |
[ExtensionAttribute()] public static void SaveJson( DicomDataSet ds, string fileName, DicomDataSetSaveJsonFlags jsonFlags )
'Declaration
<ExtensionAttribute()> Public Overloads Shared Sub SaveJson( _ ByVal ds As DicomDataSet, _ ByVal fileName As String, _ ByVal jsonFlags As DicomDataSetSaveJsonFlags _ )
'Usage
Dim ds As DicomDataSet Dim fileName As String Dim jsonFlags As DicomDataSetSaveJsonFlags DicomExtensions.SaveJson(ds, fileName, jsonFlags)
[ExtensionAttribute()] public: static void SaveJson( DicomDataSet^ ds, String^ fileName, DicomDataSetSaveJsonFlags jsonFlags )
Use this method to export a DicomDataSet as human-readable JSON file. By default, all binary data is using BulkDataUri with dummy URIs, but this behavior can be modified by passing appropriate DicomDataSetSaveJsonFlags
The output JSON format is the DICOM JSON Model defined in the DICOM specification in PS3.18.F.
Note: When saving the pixel data of multi-page compressed files to JSON, only the first frame is saved. This is because of the restriction specified in PS3.18.F.2.7 that states "There is a single InlineBinary value representing the entire Value Field, and not one per Value".
This example loads a sample DICOM file, and saves the contents as a JSON file, where the binary data is exported as InlineBinary base64
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 <TestMethod()> _ Public Shared Sub SaveJsonExample() Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm") Dim xmlFileNameOut As String = Path.Combine(LEAD_VARS.ImagesDir, "test.json") DicomEngine.Startup() Dim ds As New DicomDataSet() ' Load an existing DICOM file ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None) ds.SaveJson(xmlFileNameOut, DicomDataSetSaveJsonFlags.InlineBinary) DicomEngine.Shutdown() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
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; [TestMethod] public static void SaveJsonExample() { string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"); string xmlFileNameOut = Path.Combine(LEAD_VARS.ImagesDir, "test.json"); DicomEngine.Startup(); DicomDataSet ds = new DicomDataSet(); // Load an existing DICOM file ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None); ds.SaveJson(xmlFileNameOut, DicomDataSetSaveJsonFlags.InlineBinary); DicomEngine.Shutdown(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }