Главная страница
    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.46 MB
Время: 0.006 c
1-17978
Stanbab
2002-05-28 11:38
2002.06.06
Форма в пакете


1-18013
FireWorks
2002-05-24 11:28
2002.06.06
MapInfo


1-17965
RealDummy
2002-05-28 13:55
2002.06.06
Как очистить String от лишних пробелов и символов переноса строки


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


1-17906
Kozerog
2002-05-27 12:24
2002.06.06
Не уживаются два компонента





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский