Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 4 006

/ вопрос открыт /

Здравствуйте, уважаемые эксперты!
У меня такая проблема. Я записываю в файл с помощью WriteComponent. Потом дописываю в конец того же файла WriteComponent. А проблема состоит в том, что при считывании методом ReadComponent считывает и записываю в Мемо только то, что я записал впервые. При следуюем считывании ReadComponent читает следующюю запись и заменяет текст в Мемо. Подкажите как считать всё что записано в файл сразу в Мемо.

diamond Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: diamond (статус: Посетитель)
Вопрос отправлен: 9 апреля 2010, 12:04
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 14; последнее сообщение — 15 апреля 2010, 00:12; участников в обсуждении: 4.
Вадим К

Вадим К (статус: Академик), 9 апреля 2010, 12:10 [#1]:

Наверно читать два раза? ReadComponent -читает один компонет.
Все остальное нужно смотреть уже по Вашему коду.
Галочка "подтверждения прочтения" - вселенское зло.
DNK

DNK (статус: Студент), 9 апреля 2010, 12:20 [#2]:

А для чего сохранять и загружать текст в Мемо при помощи WriteComponent и ReadComponent? Для этого существуют специальные методы Lines.SaveToFile, Lines.SaveToStream, Lines.LoadFromFile и Lines.LoadFromStream.
"Digital Networked Knight"
diamond

diamond (статус: Посетитель), 9 апреля 2010, 12:46 [#3]:

ToFile сохраняет в текстовом формате и содержание фоала можна открыть в блокноте, а это мне не нужно.

Что читать с несколько раз э то понятно. А как бы сделать так что бы при считывании очередного компонента текст в Мемо обновлялся, а добавлялся к предыдущему.

Может не использовать Read/WriteComponent, может посоветуете иной способ сохранения текста Мемо так, что бы он был недоступный для считывания блокнотом.
DNK

DNK (статус: Студент), 9 апреля 2010, 12:59 [#4]:

Загнать весь текст мемо в память в виде строки или потока зашифровать его (информации в инете горы) а потом уже сбосить в файл.
"Digital Networked Knight"
min@y™

min@y™ (статус: Доктор наук), 10 апреля 2010, 09:42 [#5]:

А поподробней можно? Зачем такая аццкая секретность?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
diamond

diamond (статус: Посетитель), 14 апреля 2010, 12:56 [#6]:

Для того чтобы студенты не сламали.
Вадим К

Вадим К (статус: Академик), 14 апреля 2010, 13:16 [#7]:

Надо - сломают. А если не хочется, что бы видели, что там есть, лучше с сети тянуть.
Галочка "подтверждения прочтения" - вселенское зло.
min@y™

min@y™ (статус: Доктор наук), 14 апреля 2010, 15:25 [#8]:

Цитата (Вадим К):

Надо - сломают. А если не хочется, что бы видели, что там есть, лучше с сети тянуть.

И так сломают тоже. Ибо программа одна, а мозгов и свободного времени - полно.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
diamond

diamond (статус: Посетитель), 14 апреля 2010, 17:27 [#9]:

Использую для сохранения результатов примерно такой код:
fs:=TFileStream.Create('res.dat',fmOpemReadWrite);
fs.Seek(0,soEnd);
ResultForm.Memo1.Lines.SaveToStream(fs);
fs.Free;

для чтения файла res.dat следующий код:
fs:=TFileStream.Create('res.dat',fmOpenRead);
ResultForm.Memo1.Lines.LoadFromStream(fs);
fs.Free;

Логически вроди просто построено, но ничего не работает. Подкоректируйте, что не так.
Вадим К

Вадим К (статус: Академик), 14 апреля 2010, 21:23 [#10]:

to min@y™:
А я что сказал, что не сломают? просто сеть - это хороший способ усложнить взлом. Но не избежать его.

to diamond:
кроме строки
fs.Seek(0,soEnd);
ничего не вызывает подозрений.
Правда чем этот код отличается от просто Memo1.Lines.SaveToFile('res.dat'); я не знаю.
Галочка "подтверждения прочтения" - вселенское зло.
diamond

diamond (статус: Посетитель), 14 апреля 2010, 21:38 [#11]:

SaveToFile записывает же у текстовом формате, тоисть в блокноте можна будет открыть.
Вадим К

Вадим К (статус: Академик), 14 апреля 2010, 21:50 [#12]:

Боюсь огорчить, но Ваш метод тоже будет записывать в текстовом формате.
Галочка "подтверждения прочтения" - вселенское зло.
min@y™

min@y™ (статус: Доктор наук), 14 апреля 2010, 21:50 [#13]:

Ну сжимай тогда данные в архив с паролем. 7zip, например. Такой зашифрованный архив взломать будет практически невозможно, если длина пароля будет символов 30-50.
Однако, пока данные болтаются в памяти, их можно оттуда забрать, сам пробовал, знаю. Вопрос: игра стоит свеч?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
diamond

diamond (статус: Посетитель), 15 апреля 2010, 00:12 [#14]:

Я не знаю как((( Где можна найти инфу для этого.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 24 марта 2023, 10:03
Выполнено за 0.02 сек.
Рейтинг@Mail.ru