Quickfix изменение порядкового номера

Мне нужно понизить полученный порядковый номер для выполнения сертификации FIX, чтобы проверить работу заполнения/повторной отправки пробелов.

Я пытался изменить номер, но теперь я получаю EOF Exception всякий раз, когда запускаю свое приложение.

Формат файла порядкового номера немного странный:

^@^C7:4

есть идеи как это сделать?

Спасибо.


person DD.    schedule 20.03.2012    source источник
comment
А чем ты редактировал? Скорее всего, это двоичный файл, а не текстовый файл, поэтому вы не можете редактировать его, скажем, в Блокноте и ожидать, что он будет работать.   -  person Viruzzo    schedule 20.03.2012
comment
Я пробовал блокнот, а также nano в cygwin. Как еще можно отредактировать?   -  person DD.    schedule 20.03.2012
comment
Чтобы редактировать двоичный файл, вам нужен двоичный редактор и глубокие знания о том, как создается файл.   -  person Viruzzo    schedule 20.03.2012


Ответы (2)


public static void main(String[] args) throws IOException {
    int senderSequenceNumber=1910;
    int targetSequenceNumber=2268;
    RandomAccessFile file  = new RandomAccessFile("C:\\filename.seqnums", "rw");
    file.seek(0);
    file.writeUTF("" + senderSequenceNumber + ':'+ targetSequenceNumber);
}

Это адаптировано из quickfix.FileStore

person DD.    schedule 21.03.2012

Вы можете использовать file.readUTF() для печати строки порядкового номера.

        RandomAccessFile seqFile  = new RandomAccessFile("/Users/jacky/test.seqnums", "r");
        System.out.println(seqFile.readUTF());
        seqFile.close();
person Jacky    schedule 22.05.2017