![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() как преобразовать число с плавающей точкой стандарта IEEE в числовую строку в delphi
|
#2
|
|||
|
|||
![]() м-м-м, а поподробнее, с примером...
ЗЫ. А что, FloatToStr не годится? |
#3
|
|||
|
|||
![]() при преобразовании данных в строковый тип функцией FLOATtoSTR выполнение программы прерывается ошибкой invalid float point operation, хотя, я только читаю данные из файла, которые должны быть стандарта IEEE, и пытаюсь преобразовать их в строку.
|
#4
|
|||
|
|||
![]() еще раз говорю - дай пример. или ты думаешь, что ради ответа на твой вопрос кто-то полезет искать что же это за формат такой в IEEE придумали?
|
#5
|
|||
|
|||
![]() вот привожу код. и вложил злополучный файл. файл называется 796.seg
Код:
procedure TForm1.Button1Click(Sender: TObject); var f:TFileStream; data: array [1..1000] of single; i:integer; begin if o1.Execute then f:=TfileStream.Create(o1.FileName,fmOpenRead); f.Seek(3840,soFromBeginning); f.Read(data,4000); for i:=1 to 1000 do begin s1.Cells[1,i]:=floattostr(data[i]); end; end; здесь очень важно начинать считывать данные именно с 3841 байта. до этого данные хранятся в другом формате. Последний раз редактировалось Admin, 27.05.2010 в 16:00. |
#6
|
|||
|
|||
![]() эта проблема решена. оказывается и вещественные числа надо свопировать. это кажется так называется.
|