Помощь - Поиск - Пользователи - Календарь
Полная версия: Как сделать чтоб RichEdit сохранял в DOS формате?
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
KasyaAR
Помогите не выходит сохранить данные написаные в RichEdit в старом добром DOS формате(в Паскале таких проблем не было). Delphi записывает ко всему прочему всякую муть.
mj
procedure TForm1.*(Sender: TObject);
var
 s: String;
 l: Integer;
 f: TStream;
begin
 s := RichEdit1.Lines.Text; // Получаем текст
 l := Length(s); // Запоминаем длинну текста
 if l>0 then // Конвертируем в Dos кодировку
   CharToOemBuff(S[1], S[1], l);

 // Создаём файл и объект-поток для записи
 f := TFileStream.Create('lines.txt', fmCreate);
 f.Write(S[1], l); // Записываем данные в поток (файл)
 f.Free; // Закрываем файл и удаляем объект-поток
end;
Forsag
В этой "всякой мути"  RichEdit'a хранятся настройки шрифта, которым он написан. А чтобы сохранять файлы в DOS формате используй ТМемо.
Ну а если тебе всё таки очень хочется писать в RichEdit'е, а сохранять в DOS формате (не вижу в этом ни одного намёка на здравый смысл), то проще всего создать на форма TMemo c параметром Visible=false, и при сохранении копировать содержимое из RichEdit'a в TMemo, а потом сохранять в файл
procedure TForm1.NSaveClick(Sender:TObject);
begin
Memo1.Lines:=RichEdit1.Lines;
Memo.Lines.SaveToFile('file.txt');
end;


И нет мороки! ;) ;D
KasyaAR
Цитата
не вижу в этом ни одного намёка на здравый смысл

А как же подсветка синтаксиса так нами любимая?
Спасибо за подсказку, вопрос исчерпан тему можно закрыть.
Forsag
Пажалуйста! ;D ;)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.