其他分享
首页 > 其他分享> > dicom 在生成dcm文件的时候会出现乱码的处理方法

dicom 在生成dcm文件的时候会出现乱码的处理方法

作者:互联网

using Dicom.IO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SuperIC.Web
{
    /// <summary>
    /// 点击(此处)折叠或打开MyIOManager.SetImplementation(MyIOManager.Instance);
    ///将fo-dicom使用的默认字符集修改一下。注意,我的类中BaseEncodingImpl取得的是Encoding.Default,意思就是取系统默认编码。这样在中文系统下就是GB2312或者GB18030了,就可以友好的支持中文了,而不 用在每次调用DicomDataSet的AddOrUpdate方法时指定编码了。是不是很方便呢。
    /// </summary>
    class MYIOManage : IOManager
    {

        public static readonly IOManager Instance = new MYIOManage();

        private MYIOManage()
        {

        }

        protected override Encoding BaseEncodingImpl
        {
            get
            {

                return Encoding.Default;
            }
        }

        protected override IPath PathImpl
        {
            get
            {
                return DesktopPath.Instance; 
            }
        }

        protected override IDirectoryReference CreateDirectoryReferenceImpl(string directoryName)
        {
            return new DesktopDirectoryReference(directoryName);
        }

        protected override IFileReference CreateFileReferenceImpl(string fileName)
        {
            return new DesktopFileReference(fileName);
        }
    }
}
为防止在生成的时候会导致姓名等信息会出现乱码的,需要建一个初始化类。这个最好是在程序启动的时候就初始化,因为放到生成图片里面才实例化,也会出现乱码的情况,使用方式如下
 MYIOManage.SetImplementation(MYIOManage.Instance);

 

标签:MYIOManage,dcm,return,dicom,System,乱码,Instance,override,using
来源: https://www.cnblogs.com/wangjian110520/p/16133942.html