Что означает «$» перед числом в Delphi? - PullRequest
10 голосов
/ 17 декабря 2011

Я пытаюсь преобразовать код Delphi в vb.net, и я не уверен насчет этой строки:

stream.Seek($42, soFromBeginning);

Я знаком с использованием поиска файловых потоков (в vb.net), ноЯ не уверен насчет $42.

Я предполагаю, что это соответствует позиции, но как это перевести на vb.net?

Ответы [ 3 ]

14 голосов
/ 17 декабря 2011

$ - префикс шестнадцатеричной константы. В VB.NET это & ​​H, поэтому вы должны написать & H42.

4 голосов
/ 17 декабря 2011

Код, необходимый для VB.net, практически идентичен:

stream.Seek(&H42, SeekOrigin.Begin)

Примечания здесь:

  • $ в Delphi - это префикс шестнадцатеричного числа.
  • soFromBeginning соответствует SeekOrigin.Begin.
1 голос
/ 17 декабря 2011

Значение $ 42 - это смещение от начала потока.

В VB.NET это будет:

reader.BaseStream.Seek(66, IO.SeekOrigin.Begin)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...