0

我使用 dcm4che 作为我的 PACS,并且我正在插入一个 DICOM 文件,其中包含日文字符的患者姓名。但是 dcm4chee 的基于 Web 的 url 不支持日文字符,并且将患者姓名显示为乱码(如问号和正方形)。

对于 DCM4CHE,我使用 postgresql 作为数据库。在 DB 属性中,它显示“编码为 UTF8”、“排序规则为 English_India.1252”和“字符类型为 English_India.1252”。我的数据库是否支持日文字符?我是数据库新手,任何帮助将不胜感激。

编辑: 这个问题与 PACS 无关。我获得了一个带有日语章程的有效 DICOM 文件(他们使用特定字符集作为 \ISO 2022 IR 87 )并将其发送到 PACS。它在 PACS 中正确显示。所以问题出在我的 DICOM 文件上。我还将特定字符集插入为“\ISO 2022 IR 87”。但我仍然收到乱码的日文字符。

我正在使用 MergeCom Dicom 实用程序并使用 'MC_Set_Value_From_String' API 来插入日语字符串。我错过了什么吗?不能使用 'MC_Set_Value_From_String' 插入日文字符吗?我正在考虑使用 API MC_Set_Value_From_UnicodeString。

4

2 回答 2

0

UTF-8 支持所有 unicode 代码点,包括日语。因此,数据库不太可能是问题所在。

特定字符集 (0008,0005) 标签的内容是什么?dicom 的默认字符编码是 ASCII。dicom 规范中有一个部分提供了使用日语的示例。

于 2015-02-07T14:25:25.157 回答
0

我可以解决问题。

该问题与编码有关。对于 Unicode 转换,我使用的是代码页为 UTF-8 的 Windows API“WideCharToMultiByte”。这没有正确转换通过使用代码页作为 50222 修复的日文字符。您可以从下面的链接中找到所有整个代码页。 https://msdn.microsoft.com/en-us/library/dd317756(VS.85).aspx

于 2015-02-25T10:14:45.157 回答