【问题标题】:Reading chinese double byte chars from iSeries DataReader从 iSeries DataReader 读取中文双字节字符
【发布时间】:2014-02-13 20:49:10
【问题描述】:

我正在使用 IBM iSeries .NET 数据读取器从 AS400 获取数据。

1)我需要在AS400端做什么才能发送双字节字符 2) IBM iSeries 会保留双字节字符吗?我得到的只是一个空字符串

【问题讨论】:

    标签: c# .net ibm-midrange double-byte


    【解决方案1】:

    1) 确保您的连接设置为使用 UTF-8。

    2) IBM i 当然可以存储双字节数据,这取决于物理文件(表)是如何创建的。您可以在 5250 会话中执行 DSPFD LIBRARY/FILE 并搜索 DBCS capable - 您将看到 YesNo 指示表是否能够存储双字节字符。的如果你想用SQL找出你可以查询SYSIBM数据库:

    SELECT * FROM SYSIBM.SQLCOLUMNS WHERE TABLE_SCHEM = 'MYLIB' AND TABLE_NAME = 'MYTABLE'
    

    您需要查找TYPE_NAME 列以查看数据类型。如果是VARGRAPHIC,那么它可以存储双字节字符。

    【讨论】:

    • 所以我在 .net 端需要做的就是将连接设置为 UTF-8?数据阅读器会将其显示为字符串吗?
    • @magic-c0d3r - 我对 .NET 一无所知,我是 IBM i 人 :-) 但是如果你想在系统之间传输多字节字符数据,连接应该使用UTF-8。
    猜你喜欢
    • 2014-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-06
    • 1970-01-01
    • 2015-07-26
    • 1970-01-01
    相关资源
    最近更新 更多