Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.12.2008, 14:07
JohnnyBravo JohnnyBravo вне форума
Прохожий
 
Регистрация: 25.12.2008
Сообщения: 10
Репутация: 10
По умолчанию Pchar

Всем, Здравствуйте.
Подскажите пожалуйста, как мне сохранить переменную типа Pchar, в файл обычный txt хотя бы?
Ума не приложу.

Цитата:
VAR P : PChar;
f : textfile;
t: real; //// хоть integer
begin
P := DdeClientConv1.RequestData('S1');
Label1.Caption:=(P);
t:=strtofloat(p);
/// t := t*1.5;
AssignFile(f, 'c:\list.txt');
Rewrite(f);
write(f,p);
closefile(f);
StrDispose(P);
end;

Последний раз редактировалось JohnnyBravo, 26.12.2008 в 12:08.
Ответить с цитированием
  #2  
Старый 25.12.2008, 14:20
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ковертируй в String с помощью функции StrPas и записывай куда хочешь.
Ответить с цитированием
  #3  
Старый 25.12.2008, 15:25
JohnnyBravo JohnnyBravo вне форума
Прохожий
 
Регистрация: 25.12.2008
Сообщения: 10
Репутация: 10
По умолчанию

Спасибо.
а не подскажите, почему значение не пишится в файл?
ошибку выдаёт
Цитата:
[Error] Unit1.pas(51): Incompatible types: 'Integer' and 'Text'
Ответить с цитированием
  #4  
Старый 25.12.2008, 16:05
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, он, компилятор, говорит, что несоответсвие типов в переданных параметрах (или при присваивании). Смотри внимательно свой код.
Ответить с цитированием
  #5  
Старый 26.12.2008, 12:05
JohnnyBravo JohnnyBravo вне форума
Прохожий
 
Регистрация: 25.12.2008
Сообщения: 10
Репутация: 10
По умолчанию

Вы и я не обратили внимание, должно быть closefile, а не fileclose.
Теперь подскажите, почему вылетает ошибка при конвертации strtofloat, пишет 'is not a valid floating point value'
Что то на точку ругается.
Значение с dde сервера берётся допустим 50.5 и в файл записывается 50.5.
В региональных настройках стоит разделение целой и дробной части точка.
Мне просто нужно число для того что бы произвести над ним вычисления. Подскажите в чём я ошибся?
Ответить с цитированием
  #6  
Старый 26.12.2008, 15:57
JohnnyBravo JohnnyBravo вне форума
Прохожий
 
Регистрация: 25.12.2008
Сообщения: 10
Репутация: 10
По умолчанию

чё самое интересное, сделал t:=length(p);
т.е. 50,1 вроде бы 4 получается, не знаю считается ли запятая или нет, но в общем получилось 6
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:35.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025