Forum Post: RE: IMPORT raw data is missing the 1K chunks after 2GB offset

  • Thread starter Thread starter George Potemkin
  • Start date Start date
Status
Not open for further replies.
G

George Potemkin

Guest
Workaround: the missed chunk of input data can be re-read using READKEY function - just 1K from the beginning of a block. Like that: INPUT FROM VALUE(ipInputFile) BINARY. SEEK INPUT TO ipBlockOffset. ASSIGN LENGTH(opRawBlock) = ipBlockSize. IMPORT UNFORMATTED opRawBlock. ASSIGN vReadSize = SEEK(INPUT) - ipBlockOffset. IF vReadSize GT ipBlockSize THEN DO: ASSIGN vReadSize = vReadSize - ipBlockSize. IF ipBlockSize GT vReadSize THEN PUT-BYTES(opRawBlock, vReadSize + 1) = GET-BYTES(opRawBlock, 1, ipBlockSize - vReadSize). SEEK INPUT TO ipBlockOffset. REPEAT vReadByte = 1 TO vReadSize: READKEY PAUSE 0. IF LASTKEY LT 0 THEN LEAVE. PUT-BYTE(opRawBlock, vReadByte) = LASTKEY. END. /* REPEAT vReadByte */ END. /* IF vReadSize GT ipBlockSize */ INPUT CLOSE.

Continue reading...
 
Status
Not open for further replies.
Back
Top