Имя: Пароль:
1C
 
Как убрать последний символ из строки?
0 Strogg
 
11.03.10
12:13
Здравствуйте. Требуется убрать последний символ возврата каретки из сформированного текста. 1С зачем-то после последней строки добавляет символ ВК. В итоге, при перемещении курсора в конец, в открытом тексте он позиционируется не в конце последней добавленной строки, а в начале следующей. Никто не сталкивался? :(
1 zbv
 
11.03.10
12:14
Лев() и СтрДлина() - тебе в помощь.
2 Strogg
 
11.03.10
12:16
нифига. В процессе добавления - все строки добавляются корректно. Т.е. сформирована строка - добавлена в текстовый документ. Последний символ добавляется именно при записи. Причем в методе "записать" пробовал разные варианты. И Символы.ВК, и Символы.ПС... один фиг каретку переводит...
3 Поручик
 
11.03.10
12:17
(0) Ты как текст формируешь? Если через ТекстовыйДокумент, СП тебе в помощь.

РазделительСтрок (LineSeparator)
Примечание:
Значение по умолчанию ПС.
4 almar
 
11.03.10
12:17
Может СтрЗаменить(Стр,Символы.ВК,"") ?
5 Поручик
 
11.03.10
12:17
(2)
Тогда юзай ЗаписьТекста
6 Strogg
 
11.03.10
12:19
(5) - спасибо за идею. Попробую
7 Strogg
 
11.03.10
12:29
не помогает. Все равно переводит на следующую строку в конце файла :(
8 skunk
 
11.03.10
12:31
никуя не понял ... можно на русском?
9 Strogg
 
11.03.10
12:32
Упс, сорри. Заработало только после неких танцев с бубнами. При записи текста убрал разделитель строк, а при добавлении строки написал некую конструкцию:
Если Рез.Индекс(ТекСтр) <> (Рез.Количество()-1) тогда
ТекстСтрок.ЗаписатьСтроку(СтрокаДобавления, Символы.ПС);
   Иначе
ТекстСтрок.ЗаписатьСтроку(СтрокаДобавления);
КонецЕсли;
10 mikecool
 
11.03.10
12:33
(9) поставь остановку на строке ТекстСтрок.ЗаписатьСтроку(СтрокаДобавления);
- попадет? имхо, нет
11 mikecool
 
11.03.10
12:33
+10 а, понял
12 Strogg
 
11.03.10
12:34
(11) - :). Я в цикле добавляю строку., так что все попадает. А (Рез.Количество()-1) пишу потому как индекс у ТЗ начинается с нуля.
13 Ткачев
 
05.04.10
16:04
А если используется:
Текст=Новый ТекстовыйДокумент;
Текст.ДобавитьСтроку("Первая строка");
//Обработка
Текст.ДобавитьСтроку("Последняя строка");
Текст.Записать("D:\Текстик");
Как тогда убрать ?
14 ASU_Diamond
 
05.04.10
16:10
была подобная тема, сейчас попробую найти
вроде через ВставитьСтроку нормально проходит
15 Ткачев
 
05.04.10
21:56
Спасибо ASU_Diamond!!!
У меня получилось вот так, через УстановитьТекст...
Текст=Новый ТекстовыйДокумент;
Текст.ДобавитьСтроку("Первая строка");
//Обработка
Текст.ДобавитьСтроку("Последняя строка");
Текст.УстановитьТекст(СокрЛП(Текст.ПолучитьТекст()));
Текст.Записать("D:\Текстик");