![]() |
![]() |
|
Разбор строки из текстового файла БЕЗ разделителя. 🠗 (Волшебник 27.06.2017 16:05) |
☑ | ||
---|---|---|---|---|
0
palima
27.06.17
✎
15:26
|
Помогите пожалуйста разобрать txt файлик вида "ЦенаНомерклатураСумма" если в нем нет разделителей. Когда они есть все понятно и легко. А если нет разделителей и все налеплено в одну кучу - что делать?
|
|||
1
palima
27.06.17
✎
15:27
|
Учитывая то, что строк в файлике over9000...
|
|||
2
Господин ПЖ
27.06.17
✎
15:28
|
закачать его в интернет обратно
|
|||
3
Fram
27.06.17
✎
15:29
|
Запросить с разделителем? Или у этого может фиксированной длины поля?
|
|||
4
Дмитрий
27.06.17
✎
15:29
|
Ну если в названии номенклатуры нет цифр...
|
|||
5
palima
27.06.17
✎
15:31
|
(3) длины фиксированные
|
|||
6
lodger
27.06.17
✎
15:31
|
что делать? дать в бубен тому кто такую выгрузку сделал.
|
|||
7
Господин ПЖ
27.06.17
✎
15:32
|
ну и проблемы в чем? Сред() тебя спасет
|
|||
8
skafandr
27.06.17
✎
15:33
|
Плюсану к (3).Зачем изголяться с этой стороны,если вставить ; с другой стороны как правило не стоит и выеденного яйца
|
|||
9
Дмитрий
27.06.17
✎
15:34
|
(5) реквизит1 = сред(Строка, 1, длина1)
реквизит2 = сред(Строка, длина1+1, длина2) |
|||
10
Fram
27.06.17
✎
15:36
|
(8) Разобрать поля фикс длины вроде тоже проблем не составляет. Просто это моветон мне кажется в таком виде файл отдавать.
|
|||
11
Ц_У
27.06.17
✎
15:42
|
||||
12
GStiv
27.06.17
✎
15:42
|
А может попробовать открыть в каком нибудь текстовом редакторе и посмотреть непечатываемые символы.
ТЫ СУСЛИКА ВИДИШЬ? НЕТ. И Я НЕТ. А ОН ЕСТЬ! ДМБ |
|||
13
Ц_У
27.06.17
✎
15:44
|
(0) строки хоть разные или в одну строку все?
вид какой? 90.04Панталоны900 ? |
|||
14
palima
27.06.17
✎
15:47
|
(13) Строки разные, у каждой из них вид ровно такой, какой вы предположили
|
|||
15
palima
27.06.17
✎
15:47
|
(12) нет, там ничего нет
|
|||
16
Кирпич
27.06.17
✎
15:49
|
(12) а нафиг. если поля фиксированной длины. Нужно строго соблюдать пропорцию лень-тупость-жадность. С ростом тупости, уменьшаются лень и жадность, что влечет за собой падение доходов и увеличение трудозатрат (например ненужное создавание веток на мисте)
|
|||
17
palima
27.06.17
✎
15:50
|
(16) и таких же комментариев в них
|
|||
18
Fish
гуру
27.06.17
✎
15:51
|
(5) А наименование тоже фиксированное по длине?
|
|||
19
Кирпич
27.06.17
✎
15:52
|
(17) сам писал "длины фиксированные". фиксированные или не фиксированные?
|
|||
20
quest
27.06.17
✎
15:53
|
(16) Прикольная теория.
|
|||
21
Кирпич
27.06.17
✎
15:54
|
(17) кинул бы кусок файла сюда
|
|||
22
Fish
гуру
27.06.17
✎
15:55
|
(21) +100 Пару-тройку строк их файла в студию, для примера.
|
|||
23
Ц_У
27.06.17
✎
15:57
|
(21) тут видимо (ла) и фотку в профиль загрузить...
|
|||
24
palima
27.06.17
✎
15:58
|
(21) (22) http://my-files.ru/jnfom2
|
|||
25
Ц_У
27.06.17
✎
15:59
|
(24) тут все ленивые и жадные..
|
|||
26
Ц_У
27.06.17
✎
16:00
|
И я вижу разделители
|
|||
27
Fedor-1971
27.06.17
✎
16:01
|
(26) Какие?
(24) это выписка беларусбанка, там фиксированные поля по длине, под рукой разбора нет, но можешь взять печатную форму, там названия полей |
|||
28
palima
27.06.17
✎
16:02
|
(26) цифры в самом начале это дата, код банка, расчетный счет и УНП слепленные в одну кучу
|
|||
29
Ц_У
27.06.17
✎
16:03
|
Кодировка какая ?
|
|||
30
Кирпич
27.06.17
✎
16:03
|
(28) и шо? в (7) написано, что делать
|
|||
31
palima
27.06.17
✎
16:05
|
(27) какую печатную форму?
|
|||
32
Волшебник
модератор
27.06.17
✎
16:05
|
функция Сред() и хватит уже задавать вопросы
идите работайте |
|||
33
Кирпич
27.06.17
✎
16:06
|
(32) уже писали. автор требует чего то волшебного
|
|||
34
Fedor-1971
27.06.17
✎
16:09
|
(28) и? их длина не известна? Если мне не изменяет память, там не совсем очевидно определяется сумма в Дт или Кт
(31) обычную выписку за день (33) вряд ли, просто получил в руки файл без распечатки, вот и порвало шаблон |
|||
35
Ц_У
27.06.17
✎
16:12
|
Дайте мне нормальную кодировку, я уже все перебрал, кракозябры разные :)
|
|||
36
Fedor-1971
27.06.17
✎
16:13
|
(35) 866 - DOS текст
|
|||
37
Ц_У
27.06.17
✎
16:16
|
(36) нет, все то же самое
|
|||
38
SeriyP
27.06.17
✎
16:16
|
(24) если совсем ничего не получается с разделителями, я бы вручную перенес данные из такого файла в эксель:
Открываешь свой текстовый файл в редакторе, например, АкелПад. Зажимаешь Alt и тянешь мышкой курсор вниз и вправо, не отпуская кнопку, листаешь до конца, вместе с альтом зажимаешь шифт - должен выделиться нужный столбец. Копировать/Вставить в столбец в эксель. Повторить по количеству столбцов. Работы минут на 5. Ну а как с экселем из 1С поработать объяснять не надо, я думаю |
|||
39
Ц_У
27.06.17
✎
16:17
|
(36) вру, сам испортил, все так
|
|||
40
Кирпич
27.06.17
✎
16:18
|
(38) тоже функцию Сред() не освоил?
|
|||
41
SeriyP
27.06.17
✎
16:20
|
(40) Смешно. Это как вариант работы с подобным файлом для топикстартера - наиболее простой и очевидный, как мне думается
|
|||
42
Волшебник
модератор
27.06.17
✎
16:21
|
(41) Excel умеет спокойно открывать такие файлы с настройкой ширины каждой колонки.
|
|||
43
Дмитрий
27.06.17
✎
16:22
|
(0) Вставляешь в нужные места текста разделители - и потом "всё понятно и легко"
|
|||
44
Кирпич
27.06.17
✎
16:22
|
(41) я так понял, что автор программу для разбора файла пишет
|
|||
45
Кирпич
27.06.17
✎
16:23
|
(43) можно просто распечатать файл и карандашом начертить линии разделения столбцов
|
|||
46
Дмитрий
27.06.17
✎
16:25
|
(45) текстовый файл плохо принтер напечатает, будет строки переносить
|
|||
47
SeriyP
27.06.17
✎
16:26
|
(42) Ваша правда
|
|||
48
Кирпич
27.06.17
✎
16:26
|
(46) уменьшить шрифт и альбомная ориентация. я сторазтакделал
|
|||
49
SeriyP
27.06.17
✎
16:27
|
(45) а потом отсканировать, распознать и - в эксель :)
|
|||
50
Дмитрий
27.06.17
✎
16:28
|
(48) блокнот так умеет? у меня только блокнот ))
|
|||
51
Кирпич
27.06.17
✎
16:29
|
(50) ну смотря какой блокнот. мой умеет.
|
|||
52
bolobol
27.06.17
✎
16:31
|
Не частите - я записываю! В мой блокнот ещё и ручкой вручную вписывать нужно...
|
|||
53
bolobol
27.06.17
✎
16:31
|
Блииин, так и знал! Что было в посте 45, кто успел записать?
|
|||
54
Дмитрий
27.06.17
✎
16:35
|
(53) утащили в книгу знаний
|
|||
55
Tateossian
28.06.17
✎
01:22
|
Если под виндой - юзай регэксп, вот так:
RegExp = Новый COMОбъект("VBScript.RegExp"); RegExp.Multiline = Истина; RegExp.IgnoreCase = Истина; RegExp.Global = Ложь; //Шаблон = "\d+$"; RegExp.Pattern = Шаблон; Результат = СтрокаРазбор; Варианты = RegExp.Execute(СтрокаРазбор); Для Каждого Подгруппа Из Варианты Цикл Результат = Подгруппа.Value; КонецЦикла; |
|||
56
Tateossian
28.06.17
✎
01:24
|
Дай первые десять строк файла - напишу шаблон.
Проверять - тут https:// r e g e x 101. com/ |
|||
57
palima
28.06.17
✎
09:19
|
(56) чуть выше я скидывала ссылочку на файл
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |