Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по INI файлам, как записать и считать Memo1.Text   Найти похожие ветки 

 
Yuraz   (2002-05-23 15:50) [0]

туда и обратно? Сейчас пишется всё мемо, а вот считывается только первая строка... Вот кусок ини файла, и как пишу, читаю.

...

Memo1.Text:= IniFile.ReadString ("data", "txt1", Memo1.Text); //читаем

...

IniFile.WriteString ("data", "txt1", Memo1.Text); //пишем

... сам ини файл
[data]
txt1=Работа с сетью
Работа с компьютерами
Работа с проводами
Работа с прокладкой кабелей
Работа с наладкой ОС
Работа с почтой
...


 
Cossys   (2002-05-23 15:57) [1]

Сорри, разве не проще Memo1.Lines.SaveToFile,
Memo1.Lines.LoadFromFile


 
Yuraz   (2002-05-23 16:00) [2]

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


 
PVOzerski   (2002-05-23 16:02) [3]

Ини-файл должен бы содержать в себе нечто такое:
[txt1]
line1=Работа с сетью
line2=Работа с компьютерами

и т.д. И читать каждую строку отдельно. Иначе можно, только если суммарная длина строк,
с учетом переводов строки (последнее делим на 2) не превышает лимита длины строки в
ini-файле (если бы я его ещё помнил...). Тогда можно заменить в тексте временно все #13#10 на
какой-то заведомо не используемый, но формально допустимый в ini-файле символ и хранить
в таком виде.


 
Anatoly Podgoretsky   (2002-05-23 16:03) [4]

ini файл по стандарту не предназначен для хранения текста, а предназначен для хранения настроек в формате параметр=значение


 
Cossys   (2002-05-23 16:06) [5]

Насколько я знаю, считка INI-файла идет по строкам, то есть вторую строку надо уже писать в txt2... Попробуйте через динамический массив записывать строки...


 
VID   (2002-05-23 17:54) [6]

В-общем так:

//Запись в файл:
Var I:Integer;
Begin
IF memo1.lines.count =0 then exit;
Ini:=TIniFile.Create(...);
IniFile.EraseSection ("memo1_lines");

for i:=0 to memo1.lines.count - 1 do
ini.writestring("memo1_lines", "line_"+inttostr(i), memo1.lines.strings[i]);

//Чтение и файла
Memo1.lines.clear;
Ini.ReadSectionValues ("memo1_lines", memo1.lines);
// В методе ReadSectionValues тоже не всё просто, так как он вызывает метод ReadSection, с которым могут возникнуть некоторые проблемы (нехвата выделенного размера буффера). Короче, если что - пиши, подскажу...
Ini.Free;
end;



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

Форум: "Основная";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
14-18138
cok
2002-05-02 18:06
2002.06.06
Подключение разного оборудования


1-17887
Arhangel
2002-05-27 11:07
2002.06.06
Drag&drop


1-17911
stupid
2002-05-27 16:01
2002.06.06
Реакция на срабатывание кнопки Enter в Memo компоненте...


14-18151
anod
2002-05-02 18:43
2002.06.06
Книги по Win32 Api для Delphi


14-18116
Dimka Maslov
2002-04-24 17:49
2002.06.06
UBPFD Работает!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский