首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修正消息定界符

修正消息定界符
EN

Stack Overflow用户
提问于 2014-08-13 18:10:33
回答 3查看 23.7K关注 0票数 22

我是比较新修的-协议。

FIX-Protocol消息的分隔符有时会显示^和其他情况。Wikipedia Protocol表示[SOH] (十六进制 <Start of Header> )是字符。

请解释一下同样的意思。

例如,修复协议消息可以可视化地表示为

代码语言:javascript
复制
8=FIX.4.4^9=122^35=D^34=215^49=CLIENT12^52=20100225-19:41:57.316^56=B^1=Marcel^11=13346^21=1^40=2^44=5^54=1^59=0^60=20100225-19:39:52.020^10=072^

代码语言:javascript
复制
8=FIX.4.4|9=122|35=D|34=215|49=CLIENT12|52=20100225-19:41:57.316|56=B|1=Marcel|11=13346|21=1|40=2|44=5|54=1|59=0|60=20100225-19:39:52.020|10=072|

那么,使用^ over的区别到底是什么呢?

是否也使用其他分隔符。还不清楚为什么[SOH] (0x01)适合^或\x

可能是数字的。

EN

回答 3

Stack Overflow用户

发布于 2014-08-13 20:40:45

分隔符SOH = ASCII代码01是一个不可打印的字符。查看消息的二进制表示形式(例如,在十六进制编辑器视图中),您将看到字符为0x01。为了显示消息,似乎有些人使用|和其他人使用^,这些字符很少使用,因此是一个很好的分隔符。

票数 19
EN

Stack Overflow用户

发布于 2019-02-22 09:54:08

使用|字符只是为了视觉上的方便,比^A更容易阅读。

代码语言:javascript
复制
cat your.file.fix | tr '\01' '|' | less

您可以轻松地将上述命令转换为自定义shell脚本,以打开修复会话文件。

代码语言:javascript
复制
~/.bashrc

function fixlog {
  cat $* | tr '\01' '|' | less
}

然后简单地

代码语言:javascript
复制
fixlog your.file.fix
票数 6
EN

Stack Overflow用户

发布于 2017-07-26 08:45:49

FIX消息在消息中的字段之间始终有0x01,无论是在线路上、OMS/EMS中还是在日志文件中。只有当消息必须显示时,才会进行替换(好,有些人可能会使日志文件干净,从而转录字符)。有效的修复消息将有分隔字段的管道或插入符号,这种情况永远不会发生。在这种情况下,除了字段之间,任何地方都不会有修复消息。(这是一个不应该出现在打印文本中的字符-修复消息应该是可读的--它不会与终止C字符串的字符发生冲突,因此如果您愿意的话,可以将整个消息视为字符串。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25293231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档