Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: CL | DM;

Вниз

Сохранение данных в бинарный файл   Найти похожие ветки 

 
maximka   (2004-10-22 20:36) [0]

Здравствуйте уважаемые,
У нас по информатике грозит школьная олимпиада, я пока еще только начал учить дельфи, но вот столкнулся с такой задачкой примерной, которая может быть в заданиях на олимпиаду. Для вас она наверно будет очень проста, но для меня она пока вообще непостижима.

Примерный текст задачи:
дана стринговая переменная вида str := "ffd8ffe000104a4649460001", в которой содержатся данные в шестнадцатиричном виде. И эти данные необходимо записать в бинарный файл так чтобы каждый записанный байт соответствовал своему шестнадцатиричному значению в представленной стринговой переменной.

Вот такую вот задачку мне дали порешать. Помогите пожалуйста. Буду очень благодарен если представите исходник с пояснениями, чтоб я понял как это делается. Огромное вам спасибо.


 
Юрий Зотов ©   (2004-10-22 20:46) [1]

1. Если длина строки - нечетная, добавляем к ней слева символ "0"
2. Проходим строку в цикле while по парам символов. Каждая пара берется, как подстрока, дополняется слева символом "$", преобразуется в число вызовом StrToInt и затем это число записывается в file of byte.

Вот и все. А код - это уж сами, а то неинтересно будет.


 
maximka   (2004-10-22 20:52) [2]

спасибо я это понял, но я никогда не работал с записью в текстовые файлы, а тут еще и бинарные. можете хотя бы запись в файл показать? спасибо заранее


 
wnew ©   (2004-10-22 20:57) [3]

maximka   (22.10.04 20:52) [2]
Нажимаешь F1, в индексе печатаешь write, получаешь помощь с примером по procedure Write( [var F: Text; ] P1 [ , P2,..., Pn] );


 
begin...end ©   (2004-10-22 20:59) [4]


> [2] maximka   (22.10.04 20:52)

var
 F: file of Byte;
 Value: Byte;

begin
 AssignFile(F, "c:\MyFile.bin");
 Reset(F);
 // В Value записываем нужное число
 Write(F, Value);
 CloseFile(F)
end.


 
maximka   (2004-10-22 21:00) [5]

У меня дельфи7, и там вроде нет примера, у меня с английским немного грустно, поэтому я хотел с пояснениями на русском понять это. извините конечно что глупые вопросы задаю, но я ученик всеголишь.


 
maximka   (2004-10-22 21:01) [6]

воооо, спасибочки большое begin...end


 
Юрий Зотов ©   (2004-10-22 22:15) [7]

wnew © (22.10.04 20:57) [3]
maximka (22.10.04 21:00) [5]

LOL.



Страницы: 1 вся ветка

Текущий архив: 2004.11.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
1-1098632099
span
2004-10-24 19:34
2004.11.07
Использование PGP в delphi


3-1097057614
VitGun
2004-10-06 14:13
2004.11.07
Ошибка при добавлении записи.


4-1096470270
sidrom
2004-09-29 19:04
2004.11.07
открытие файла в приложении по умолчанию


14-1098274091
Drakosha
2004-10-20 16:08
2004.11.07
.NET


1-1098377903
Kolan
2004-10-21 20:58
2004.11.07
ComboBox - Ctl3D