2013-11-23 28 views
2

我應該以BCD格式發送數據元素35(Track2:「..... = .....」)。 '='字符將被替換爲'D'。BCD中的Track2 - 'D'字符

BCD不是0x0D不合法嗎?

但是,客戶永遠是對的......那麼,怎麼做呢?

我可以添加下面的靜態方法:在不改變的lib

msg[Bit._035_TRACK_2_DATA] = FieldDescriptor.BcdVar(2, 37, FieldValidators.Track2); 

是否有可能:

BcdVar(..., IFieldValidator validator) 

,並呼籲?

回答

1

嘗試使用二進制字段描述符而不是BCD。

爲什麼我認爲發生這種情況是通過使軌道分隔符爲=,您可以將打包從ASCII更改爲BINARY,從而節省30個奇數字節。現在不重要,但我可以想象這在幾年前很重要。

我發現Hypercom終端默認是這樣做的,根據我的經驗,我不得不在服務器上更改某些傳出接口。