Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2006, 13:21   #1
Saili
 
Аватар для Saili
 
Регистрация: 04.12.2006
Сообщений: 7
По умолчанию Как из Memo вывести строки в txt файл в конец там существующих

Заношу строки
Memo2.Lines.LoadFromFile('t1.txt'); // загружаю файл
Memo2.Lines.SaveToFile('t3.txt'); // Заношу в другой

Memo2.Lines.LoadFromFile('t2.txt'); // загружаю второй файл
Memo2.Lines.SaveToFile('t3.txt'); // снова заношу в файл t3

а предыдущая информация исчезает!!!
Saili вне форума Ответить с цитированием
Старый 08.12.2006, 14:26   #2
Speeker
Форумчанин
 
Аватар для Speeker
 
Регистрация: 01.12.2006
Сообщений: 241
По умолчанию

Конечно пропадает!!!
Ведь у тебя в мемо содиржимого того вайла нет, а если хочешь что бы не пропадало используй переменную для хранения содежимого файла
Первое что пришло в головоу (а по тому не оптимально)
используй дополнительную переменную типа TStrings и загружай в нее файл
Примерно так:
procedure TForm1.Button1Click(Sender: TObject);
var
z:tstrings;
i:integer;
begin
z:=tstringlist.Create;
memo1.Lines.LoadFromFile('d:\a.txt' );
memo1.Lines.SaveToFile('d:\b.txt');
memo1.Lines.LoadFromFile('d:\c.txt' );
z.LoadFromFile('d:\b.txt');
for i:=0 to memo1.Lines.Count-1 do
z.Add(memo1.Lines.ValueFromIndex[i]);
z.SaveToFile('d:\b.txt');
end;
Програмисты - единственные люди, которым платят за исправления их же ошибок
Speeker вне форума Ответить с цитированием
Старый 08.12.2006, 15:45   #3
Saili
 
Аватар для Saili
 
Регистрация: 04.12.2006
Сообщений: 7
По умолчанию

Спасибо, Speeker! Повторил - работает!
Но куда-то деваются первые символа всех строк файла "с".
Ниче не понимаю!
Saili вне форума Ответить с цитированием
Старый 08.12.2006, 16:35   #4
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
Радость зачем первые две строки ?

Код:
memo1.Lines.LoadFromFile('d:\a.txt');
memo1.Lines.SaveToFile('d:\b.txt');
memo1.Lines.LoadFromFile('d:\c.txt');
z.LoadFromFile('d:\b.txt');
for i:=0 to memo1.Lines.Count-1 do
z.Add(memo1.Lines.ValueFromIndex[i]);
z.SaveToFile('d:\b.txt');
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 08.12.2006, 19:33   #5
Saili
 
Аватар для Saili
 
Регистрация: 04.12.2006
Сообщений: 7
По умолчанию

Без них нельзя.
"Нет ничего более постоянного во Вселенной, чем ПЕРЕМЕННЫЕ"
ЛАО ЦЗЫ
А, все таки куда девается первый символ?
TStrings ими питается что ли?

Приятных выходных, ребята!!!
Saili вне форума Ответить с цитированием
Старый 11.12.2006, 11:51   #6
Speeker
Форумчанин
 
Аватар для Speeker
 
Регистрация: 01.12.2006
Сообщений: 241
По умолчанию

Цитата:
Сообщение от Saili Посмотреть сообщение
А, все таки куда девается первый символ?
TStrings ими питается что ли?

Приятных выходных, ребята!!!
Пришли мне исходник, посмотрю...
Програмисты - единственные люди, которым платят за исправления их же ошибок
Speeker вне форума Ответить с цитированием
Старый 11.12.2006, 23:34   #7
Gambler
Игрок
Форумчанин
 
Аватар для Gambler
 
Регистрация: 29.10.2006
Сообщений: 367
Счастье

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
S,S1:tstrings;
i:integer;
begin
S:=tstringlist.Create;
S1:=tstringlist.Create;
S.LoadFromFile('d:\A.txt'); //Загружаем "А"
S1.LoadFromFile('d:\B.txt'); //Загружаем "B"
for i:=0 to S1.Count-1 do 
S.Add(S1.Strings[i]); //В этом и была вся фигня.
S.SaveToFile('d:\C.txt');
end;
Жизнь всегда игра. Но смерть - не всегда поражение.

#define true (Math.random()>0.5) //Удачной отладки
Gambler вне форума Ответить с цитированием
Старый 14.12.2006, 06:38   #8
Drop
Пользователь Подтвердите свой е-майл
 
Аватар для Drop
 
Регистрация: 14.12.2006
Сообщений: 29
По умолчанию

Цитата:
Сообщение от Gambler Посмотреть сообщение
Код:
for i:=0 to S1.Count-1 do 
S.Add(S1.Strings[i]);
Зачем цикл если есть S.AddStrings(S1);
какой вопрос, такой ответ..
Drop вне форума Ответить с цитированием
Старый 16.12.2006, 11:23   #9
Speeker
Форумчанин
 
Аватар для Speeker
 
Регистрация: 01.12.2006
Сообщений: 241
По умолчанию

Цитата:
Сообщение от Drop Посмотреть сообщение
Зачем цикл если есть S.AddStrings(S1);
Согласен, есть не доработка, но у меня вроде и мой код пахал...
Програмисты - единственные люди, которым платят за исправления их же ошибок
Speeker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй gotex Помощь студентам 4 08.05.2008 02:27
Как пререместить мигающую палочку в конец строки TEdit ? Protsv Общие вопросы Delphi 2 07.04.2008 08:43
Как вывести в цикле for ... do строки? ViTYAi2007 Помощь студентам 14 27.03.2008 05:47
Поставить курсор в конец строки в TEdit Никки Общие вопросы Delphi 2 17.03.2008 00:27
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. vitalik007 Помощь студентам 1 25.09.2007 20:45