0 / 0 / 0
Регистрация: 07.02.2013
Сообщений: 5
|
|
1 | |
Скопировать часть файла в середину другого файла07.02.2013, 16:45. Показов 8805. Ответов 9
Метки нет (Все метки)
Добрый день, надеюсь на вашу помощь. Собственно проблема такая - можно ли, и если можно, то как осуществить копирование строк из одного текстового файла в определенное место второго ?
Добавлено через 6 часов 53 минуты Окей, я немного продвинулся в своих попытках и могу чуть уточнить условия. Во втором файле необходимо удалить все строки, содержащие буквы и оставшееся содержимое вставить в конец первого файла. Послед этого в конце первого файла написать END. Так вроде проще, может кто-нибудь поможет ?
0
|
07.02.2013, 16:45 | |
Ответы с готовыми решениями:
9
Скопировать определенную строчку из одного файла и вставить в определенную строчку другого файла Как скопировать часть текста txt-файла в виде списка событий c условием - текущая дата? - BAT Перенос файлов в папки, имена которых содержат часть названия файла или расширение файла Вставить N последних строк одного TXT-файла в конец другого TXT-файла |
94 / 94 / 4
Регистрация: 25.06.2012
Сообщений: 278
|
|
07.02.2013, 17:23 | 2 |
Может проще будет найти то, что Вам нужно вставить в конец другого файла?
0
|
0 / 0 / 0
Регистрация: 07.02.2013
Сообщений: 5
|
|||||||||||
07.02.2013, 17:32 [ТС] | 3 | ||||||||||
C первой задачей вроде разобрался вот таким корявым способом, уверен, что можно сделать это красивее.
Во втором файле, кроме всех строк, содержащих буквы необходимо удалить несколько строк с цифрами, но между этими цифрами стоит по пять пробелов, в строках с буквами (кроме строк со словом COMPOSITION) также есть пять пробелов, так что я вышел из ситуации так:
Извините, что так путанно получилось) Уверен, что можно все сделать проще. Осталось только в конец файла model2 вставить "END" ) Добавлено через 4 минуты Сначала думал об этом, но нужные мне строки для копирования это несколько сотен блоков вот такого вида: 0.74804E-02 0.17253E-04 0.96287E-03 0.41577E-03 0.98538E-04 0.77108E-04 0.13738E-05 0.19701E-04 0.10134E-04 0.18362E-06 0.46545E-05 0.10485E-05 0.12419E-05 0.39887E-06 0.38168E-06 0.97072E-08 0.30389E-03 0.18790E-01 0.65330E-02 0.16070E-01 0.24940E-02 0.35930E-04 0.16480E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.45400E-04 0.76820E-04. Которые еще разделены между собой строкой с текстом.
0
|
94 / 94 / 4
Регистрация: 25.06.2012
Сообщений: 278
|
|
07.02.2013, 17:40 | 4 |
1
|
Модератор
5231 / 2106 / 414
Регистрация: 06.01.2013
Сообщений: 4,835
|
||||||
07.02.2013, 19:49 | 5 | |||||
Стоп, в твоем файле в нужных тебе строках все-таки есть буквы?
1
|
0 / 0 / 0
Регистрация: 07.02.2013
Сообщений: 5
|
|
08.02.2013, 11:04 [ТС] | 6 |
Нет, в нужных мне строках букв нет. Если совсем конкретно, то вот так выглядит начало второго файла:
Кликните здесь для просмотра всего текста
" EXTERNAL STORAGE PARAMETERS 2 10 1 4246 11 1 4246 ARRAY 165 11 0 0 26 165 28 1 QUANTITY OF ROWS 49 25 QUANTITY OF LAYERS = 89 OLD SOLUTION HAS THE FOLLOWING PARAMETERS: FF= 0.99408E-04 CONVERGENCE OF CORRECTIONS TPOP= 0.14153E-01 COMPOSITION OF ZONE 1 0.74804E-02 0.17253E-04 0.96287E-03 0.41577E-03 0.98538E-04 0.77108E-04 0.13738E-05 0.19701E-04 0.10134E-04 0.18362E-06 0.46545E-05 0.10485E-05 0.12419E-05 0.39887E-06 0.38168E-06 0.97072E-08 0.30389E-03 0.18790E-01" 0.65330E-02... " Удалить нужно первые строчки (как видно, в них тоже есть несколько строк не содержащих буквы) и строки "COMPOSITION OF ZONE n". Пока твой вариант не работает, попробую поразбираться. Спасибо. Добавлено через 12 минут P.S. В первых строках, которые нужно удалить, есть по пять пробелов (в скопированном тексте они убрались до одного), чем я и воспользовался в своем варианте. Соответственно в качестве признака для удаления ненужных строк можно оставить пять пробелов и слово "COMPOSITION" Добавлено через 2 часа 3 минуты Всё оказалось еще немного сложнее. Мой корявый способ работает, всё что нужно копируется в конец файла, END в конце стоит, но вдруг оказывается, что эти нужные строки надо вставить всё-таки не в конец первого файла, а в определенное место в середине. Если я правильно понимаю, то мне надо оставить в первом файле метку, выполнить ее поиск и после нее вставить нужные строки.
0
|
1780 / 762 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
|
|
08.02.2013, 12:49 | 7 |
pashgun, довольно сложно понять, что хочется. Тут не приёмная телепатов. Прикрепите к посту образцы двух текстовых файлов: первый - что есть, второй - что надо.
0
|
0 / 0 / 0
Регистрация: 07.02.2013
Сообщений: 5
|
||||||
08.02.2013, 13:39 [ТС] | 8 | |||||
Понимаю, сейчас попробую сформулировать еще раз.
У меня есть два файла: файл1 - входные данные для некой программы; и файл2, кусочек которого я привел в посте выше. Итого надо из файла2 выдернуть все строки вида Кликните здесь для просмотра всего текста
0.74804E-02 0.17253E-04 0.96287E-03 0.41577E-03 0.98538E-04 0.77108E-04 0.13738E-05 0.19701E-04 0.10134E-04 0.18362E-06
0.46545E-05 0.10485E-05 0.12419E-05 0.39887E-06 0.38168E-06 0.97072E-08 0.30389E-03 0.18790E-01 0.65330E-02 0.16070E-01 0.24940E-02 0.35930E-04 0.16480E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.45400E-04 0.76820E-04. и вставить их в определенное место файла1, конкретно после строки "RO=" Программированием я раньше не занимался, поэтому у меня с этим очень не очень. На данный момент я нашел такое решение:
0
|
Модератор
5231 / 2106 / 414
Регистрация: 06.01.2013
Сообщений: 4,835
|
|
08.02.2013, 14:51 | 9 |
1
|
0 / 0 / 0
Регистрация: 07.02.2013
Сообщений: 5
|
|
08.02.2013, 15:21 [ТС] | 10 |
Чёрт, рили сорри, что путаю вас, народ. Я так привык обращаться с числами в таком формате, что просто вообще в упор не воспринял Е за букву. Да уж.
0
|
08.02.2013, 15:21 | |
08.02.2013, 15:21 | |
Помогаю со студенческими работами здесь
10
Запуск cmd файла с определенного места в его коде из другого cmd файла Как скопировать 2 последних по дате файла Скопировать слова из одного файла в два другие Скопировать некоторые значения из одного файла в другой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |