我有一个固定宽度的文本文件,该文件已被解开自Comp-3数据为固定的宽弦。

我需要知道如何解释以下领域:

FIELD-NAME-1 PIC S9(15)V9(3) COMP-3.
FIELD-NAME-2 PIC S9(3)V9(8) COMP-3.
FIELD-NAME-3 PIC S9(3)V9(6) COMP-3.

这些出现在我的扁平的文件为:

FIELD-NAME-1 0123456789123456780
FIELD-NAME-2 01234567890
FIELD-NAME-3 012345670

我需要知道是什么数字上述会代表。

这是正确的:

FIELD-NAME-1 123456789123456.780  --> The first 0 means +ve?
FIELD-NAME-2 012.34567890
FIELD-NAME-3 012.345670

谢谢你的帮助。火腿

有帮助吗?

解决方案

S9(15)V9(3)需要19nybbles(20在的现实,因为它必须做一个甚至数nybbles)存储:

  • 一个标志。
  • 15整位。
  • 3为非整数位(V是一个隐含的小数,而不是一个真正一)。

的标志通常出现在结束了作为 CD nybble所以这个问题的答案完全取决于什么的拆包。

你的第一例实际上具有正确数量的数字 没有 的标志,这样,我会关心你的发言,其中一人为代表的标志。要么那个,或者你已经离开"9".其他两个实例有足够的数字为签字和数字的一部分。

最好的赌注,看看你能得到负数(和其他测试数据,如1)为有看到什么产生。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top