如何将ISO消息打包到获取主机

时间:2018-02-10 07:21:04

标签: iso8583 j8583

我正在尝试使用J8583打包ISO 8583消息:

        IsoMessage m = mf.newMessage(0x200); // You must use 0x200, 0x400, etc.
        m.setValue(3, "000000", IsoType.ALPHA, 6);
        m.setValue(11, "000001", IsoType.ALPHA, 6);
        m.setValue(41, "3239313130303031", IsoType.ALPHA, 16);
        m.setValue(60, "001054455354204D45535347", IsoType.ALPHA, 24);
        m.setValue(70, "0301", IsoType.ALPHA, 4);

        System.out.println(m.debugString());

在发送给获取主机之前,我应该如何获得ISO消息?

1 个答案:

答案 0 :(得分:1)

有三种方式:

  • 调用writeData以将消息编码为字节数组。你有责任将它写入一个带有长度标题,终结符等的套接字
  • 如果您正在使用java.nio,请致电writeToBuffer以获取ByteBuffer。您可以传递长度标头的大小(通常为2或4个字节),或者0以省略长度标头。生成的ByteBuffer包括消息终止符(如果已设置)。
  • 调用write,将消息直接写入OutputStream。您可以指定长度标头的大小,它也会写入终结符(如果已设置),然后刷新流。