|
Как записать спецсимволы в текстовый файл? | ☑ | ||
---|---|---|---|---|
0
palpetrovich
21.02.13
✎
15:02
|
формат строк должен быть таким:
"0" + CR + LF + LF + "Собственно текст" + CR + LF; Символы.LF дают CR + LF, а как получить просто LF? |
|||
1
palpetrovich
21.02.13
✎
15:17
|
короче по-ходу не совсем это текстовый файл, при таком создании в 1с, перед первым нулем еще какие-то п»ї получаются ...эт если в HEX редакторе смотреть
|
|||
2
fmrlex
21.02.13
✎
15:18
|
(1)В СП глянь константы есть вроде.
|
|||
3
palpetrovich
21.02.13
✎
15:18
|
(2) эти?
|
|||
4
palpetrovich
21.02.13
✎
15:18
|
Символы (Chars)
Значения ВК (CR) ВТаб (VTab) НПП (NBSp) ПС (LF) ПФ (FF) Таб (Tab) |
|||
5
Steel_Wheel
21.02.13
✎
15:18
|
ОС какая?
|
|||
6
ДенисЧ
21.02.13
✎
15:18
|
(1) Ещё одна жертва UTF...
|
|||
7
palpetrovich
21.02.13
✎
15:20
|
(5) в2к3
|
|||
8
palpetrovich
21.02.13
✎
15:22
|
(6) безнадега?
|
|||
9
Steel_Wheel
21.02.13
✎
15:24
|
(7) Терминатор строки CR + LF -- ты их отдельно можешь подать на стандартный ввод. А в файле, по идее, смысла не имеют
LF -- терминатор строки в *nix и linux |
|||
10
Steel_Wheel
21.02.13
✎
15:25
|
Хотя, по идее Символ(13) может помочь
|
|||
11
ДенисЧ
21.02.13
✎
15:25
|
(8) Купи у меня СП :-)
|
|||
12
Reset
21.02.13
✎
15:26
|
Записать(<ИмяФайла>, <ТипФайла>, <РазделительСтрок>)
|
|||
13
Kashemir
21.02.13
✎
15:26
|
Символ(<КодСимвола>)
|
|||
14
Reset
21.02.13
✎
15:26
|
Подробнее у (11) :)
|
|||
15
Kashemir
21.02.13
✎
15:28
|
+(13) плюс на всякий случай еще одна неожиданная функция обратного преобразования КодСимвола(<Строка>, <НомерСимвола>)
|
|||
16
palpetrovich
21.02.13
✎
15:28
|
(10) Символ(13) - это CR, а мне "отдельно" LF нужен
(11) а там есть про "п»ї" вначале файла? |
|||
17
Reset
21.02.13
✎
15:29
|
(16) Это сигнатура UTF-8
|
|||
18
palpetrovich
21.02.13
✎
15:29
|
(15) неожиданно :)
|
|||
19
palpetrovich
21.02.13
✎
15:29
|
(17) а как избавится?
|
|||
20
ДенисЧ
21.02.13
✎
15:30
|
(17) И опять мои дети останутся без сладкого :-(
|
|||
21
Reset
21.02.13
✎
15:31
|
(19) Дениса обделяю, не могу, дети у него
|
|||
22
Kashemir
21.02.13
✎
15:31
|
(19) Пиши файл бинарного типа и лепи какие хочешь символы.
|
|||
24
aka AMIGO
21.02.13
✎
15:33
|
(16) LF - Символ(10) [?]
|
|||
25
Steel_Wheel
21.02.13
✎
15:34
|
(16) >>Символ(13) - это CR, а мне "отдельно" LF нужен
Символ(10)? |
|||
26
aka AMIGO
21.02.13
✎
15:35
|
||||
27
palpetrovich
21.02.13
✎
15:40
|
Символ(10) это CRLF
|
|||
28
Reset
21.02.13
✎
15:42
|
palpetrovich, короче, судя по всему, тебе достаточно (4) и (12).
|
|||
29
aka AMIGO
21.02.13
✎
15:46
|
(27) да? и давно? :)
http://dic.academic.ru/dic.nsf/eng_rus/377707/CR |
|||
30
palpetrovich
21.02.13
✎
15:48
|
(28)я ТипФайла устанавливаю так, ТД.УстановитьТипФайла(КодировкаТекста.ANSI); но поробую и (12)
(29) да вот попробовал и получил |
|||
31
aka AMIGO
21.02.13
✎
15:49
|
(30) ну, возможно.. LF смутно помнится 12 или 11.. забыл уже
|
|||
32
Reset
21.02.13
✎
15:51
|
(30) УстановитьТипФайла для интерактивной записи. Записать() его игнорирует, как я понимаю.
|
|||
33
Reset
21.02.13
✎
15:52
|
Ты же (0) не интерактивно редактируешь/сохраняешь? :)
|
|||
34
palpetrovich
21.02.13
✎
15:58
|
(32) забавно, действительно если записывать как в (12) -ненужного начала файла нет
|
|||
35
palpetrovich
21.02.13
✎
16:00
|
короче осталось только получить символ(0A) :)
|
|||
36
palpetrovich
21.02.13
✎
16:03
|
+35 причем 0A как-бы намекает на символ(10) ...но увы, возвращает CRLF
|
|||
37
Reset
21.02.13
✎
16:03
|
(36) Да нифига.
|
|||
38
Reset
21.02.13
✎
16:05
|
Прокапитаню чуток.
>>>Символы.LF дают CR + LF >>>да вот попробовал и получил Не так. Как ни удивительно, Символы.LF дает LF (символ с кодом 10). При Записать() у тебя LF заменились на CR + LF. Про это поведение написано в СП подробно. |
|||
39
palpetrovich
21.02.13
✎
16:07
|
(38) хм, При Записать() ? ...ща поищу где про это писано
спасибо |
|||
40
Reset
21.02.13
✎
16:08
|
(39) Третий параметр в (12) '-)
|
|||
41
Reset
21.02.13
✎
16:09
|
Извини ДенисЧ ;p
|
|||
42
palpetrovich
21.02.13
✎
16:16
|
(40) мдя, действиельно при зависи и что прикольно, верный результат получается с пустой строкой в "разделителе"
ТД.Записать(ПутьКФайлу + "extratextrec.dat", "windows-1251", ""); Спасибо! Извини ДенисЧ :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |