Разобрать csv файл
☑
0
lanc2233
17.06.17
✎
22:42
Есть файл со строкой :
"Значение 1";"Другое значение; с точкой запятой","Еще значение"
Благодаря тому, что во второй колонке есть точка с запятой, СтрРазделить дает 4 колонки. Эксель понимает верно и дает три колонки.
Есть какой-то простой способ правильно разделить строку на значения, без создания комобъекта эксель. Или придется свою функцию писать?
1
lanc2233
17.06.17
✎
22:43
В примере ошибка, нужно так :
"Значение 1";"Другое значение; с точкой запятой";"Еще значение"
2
Неверный Параметр И
17.06.17
✎
22:46
Использовать как разделитель ";" начало и конец обработать отдельнь
3
lanc2233
17.06.17
✎
22:47
Спасибо. Сам не допер ))
4
lanc2233
17.06.17
✎
23:11
Увы не подходит.
СтрРазделить(<Строка>, <Разделитель>, <ВключатьПустые>)
Параметры:
<Разделитель> (обязательный)
Тип: Строка.
Строка символов, каждый из которых является индивидуальным разделителем.
Разделитель = Символ(34)+";"+Символ(34);
Мас = СтрРазделить(Стр,Разделитель,Истина);
Делает немеряно элементов, потому что получается два разделителя - кавычка и точка с запятой.
5
Неверный Параметр И
17.06.17
✎
23:31
Стрзаменить и стрполучитьстрокупономеру
Хотя, кажется, тебе понятней будет использовать ексель через ком.
6
Aleksey
18.06.17
✎
00:05
ИсхСтрока = """Значение 1"";""Другое значение; с точкой запятой"";""Еще значение""";
Разделитель =""";""";
ИсхСтрока = Сред(ИсхСтрока,2,(СтрДлина(ИсхСтрока)-2));
НоваяСтр=СтрЗаменить(ИсхСтрока,Разделитель,РазделительСтрок);
Сообщить(СтрКоличествоСтрок(НоваяСтр));
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой