![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
перевод каретки
zorik © (2008-12-17 11:35:00)Ламерский вопрос. Как еще можно записать строку с переводом каретки, кроме как:
s = 'строка 1' + #13 + 'строка 2'
А то константы записаные таким образом некрасиво смотрятся
Kostafey (2008-12-19 00:11:00) [1]Тоже как то столкнулся с проблемой записи
довольно объемной информации, в том числе многострочной
в ini-файлы.
Решения, конечно той или иной степени кривизны можно всегда найти.
Мне тогда ketmar рекомендовал Lua. 2 дня мучался, на 3-й
пришло просветление. Сделал конфиги а lua.
Так что если есть некоторый резерв времени, то можно
попробовать использовать не только ini - файлы, а нечто
иное, скажем, xml...
Denis__ (2008-12-17 18:06:00) [2]Почему именно на <br>? Jeer © в [14] разве не это(по сути) посоветовал?
zorik (2008-12-17 17:57:00) [3]
> а чего бы идею из html не позаимствовать? при записи заменять
> #13#10 на <br>, при чтении - обратно
угу
clickmaker (2008-12-17 16:10:00) [4]> думал может есть какой-то готовый спец-символ, чтоб записать
> одной строкой в файле
а чего бы идею из html не позаимствовать? при записи заменять #13#10 на <br>, при чтении - обратно
qqq (2008-12-17 13:10:00) [5][0]
s:='строка 1'$0D'строка 2';
> считывается только первая строчка
попробуй в кавычках
Jeer (2008-12-17 13:01:00) [6]Любой, который в твоей строке появиться не может
Хоть комбинация ($%*]
zorik (2008-12-17 12:11:00) [7]
> Ega23 © (17.12.08 12:02) [11]
я понимаю. но думал может есть какой-то готовый спец-символ, чтоб записать одной строкой в файле
clickmaker (2008-12-17 12:04:00) [8]WriteBinaryStream
Ega23 (2008-12-17 12:02:00) [9]
> а считывается только первая строчка
читай про формат ini-файла. Много думай.
zorik (2008-12-17 12:01:00) [10]Тогда задам вопрос по-другому. Как, например с ини-файла считать строку с возвратом каретки, чтоб потом не мучится с ней, заменяя спец символ в проге.
Наваял примерчик:
procedure TForm1.Button1Click(Sender: TObject);
var
f: TIniFile;
begin
f := TIniFile.Create('c:/ini.ini');
f.WriteString('1', 's', 'string 1'#13'string 2');
f.Free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
f: TIniFile;
s: string;
begin
f := TIniFile.Create('c:/ini.ini');
s := f.ReadString('1', 's', '');
f.Free;
MessageDlg(s, mtInformation, [mbOk], 0);
end;
В файл записывается:
[1]
s=string 1
string 2
а считывается только первая строчка
Понимаю что это можно обойти, и вариантов как обойти давать не надо
Ega23 (2008-12-17 11:50:00) [11]
> так устроит )
Эту блевотину (да простит меня Аллах) ты называешь красивым оформлением кода????
Ну, на вкус и цвет...
zorik (2008-12-17 11:47:00) [12]
> s2 = 'строка 1'#13'строка 2';
так устроит )
Сергей М. (2008-12-17 11:44:00) [13]
> с переводом каретки
"Каретку" возвращают(Carriage Return)
А переводят (точнее - подают новую) строку(Line Feed)
Palladin (2008-12-17 11:43:00) [14]
> да ))) люблю когда код красивый )))
код красивый - когда понятный, остальное от лукавого
рекомендую многолинейные строки "рисовать" так
s:=
'строка 1'#13+
'строка 2';
Ega23 (2008-12-17 11:42:00) [15]const CRLF = #13#10;
s := 'строка 1' + CRLF + 'строка 2'.
А что, вправду эстет?
Сергей М. (2008-12-17 11:41:00) [16]Так устроит ?
const
CR = #13;
s1 = 'строка 1'+CR+'строка 2';
s2 = 'строка 1'#13'строка 2';
zorik (2008-12-17 11:40:00) [17]
> эстет?
да ))) люблю когда код красивый )))
Amoeba (2008-12-17 11:40:00) [18]
>
> zorik © (17.12.08 11:35)
>
> Ламерский вопрос. Как еще можно записать строку с переводом
> каретки, кроме как:
>
> s = 'строка 1' + #13 + 'строка 2'
>
> А то константы записаные таким образом некрасиво смотрятся
Как прикажете понимать "константы ... некрасиво смотрятся"?
Вопрос и вправду ламерский.
P.S. Можно записать и так:
s = 'строка 1'#13'строка 2'
Palladin (2008-12-17 11:39:00) [19]ну например
s:='строка 1'#13'строка 2';
> А то константы записаные таким образом некрасиво смотрятся
эстет?