将点从 C# .Net 应用程序传递到 IBM MQ 时附加到 MQ 消息的末尾
Dot appended to the end of MQ message when passing it from C# .Net application to IBM MQ
我正在将消息从 C# .NET 4.0 传递到 MQ 版本:7.5.0.5。代码片段
queue = queueManager.AccessQueue(strQueueName, MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING);
queueMessage = new MQMessage();
queueMessage.Format = MQC.MQFMT_STRING;
queueMessage.MessageType = 8;
queueMessage.CharacterSet = 1208;
queueMessage.WriteUTF(message);
queuePutMessageOptions = new MQPutMessageOptions();
queue.Put(queueMessage, queuePutMessageOptions);
messageWrittenSuccessfully = true;
queue.Close();
我收到的消息是字符后跟点
C.E.R.1.2.3.4.而不是 CER1234
不确定这是否与编码或 CCIS 问题有关。
将 ASCII 字符集设置为 437。 Here 是对您的问题的详细解释。
此外,您应该使用为消息类型定义的 MQ:
queueMessage.MessageType = MQC.MQMT_DATAGRAM;
我正在将消息从 C# .NET 4.0 传递到 MQ 版本:7.5.0.5。代码片段
queue = queueManager.AccessQueue(strQueueName, MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING);
queueMessage = new MQMessage();
queueMessage.Format = MQC.MQFMT_STRING;
queueMessage.MessageType = 8;
queueMessage.CharacterSet = 1208;
queueMessage.WriteUTF(message);
queuePutMessageOptions = new MQPutMessageOptions();
queue.Put(queueMessage, queuePutMessageOptions);
messageWrittenSuccessfully = true;
queue.Close();
我收到的消息是字符后跟点 C.E.R.1.2.3.4.而不是 CER1234
不确定这是否与编码或 CCIS 问题有关。
将 ASCII 字符集设置为 437。 Here 是对您的问题的详细解释。
此外,您应该使用为消息类型定义的 MQ:
queueMessage.MessageType = MQC.MQMT_DATAGRAM;