Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 20.12.2014
Сообщений: 15
.NET 4.x

Из строк текстового файла получить имена файлов и записать их в отдельный текстовый файл

12.04.2016, 14:54. Показов 1735. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, имеется текстовый файл, порядка 7-ми или 8-ми тысяч строк
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
100157‡I:\INTERNET-SHOP\FOTOS\WALL\PIANCA\Puro.jpg
100158‡I:\INTERNET-SHOP\FOTOS\WALL\PIANCA\Sbalzato 1.jpg
100159‡I:\INTERNET-SHOP\FOTOS\WALL\PIANCA\Sbalzato 2.jpg
100173‡I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Esse1.jpg;I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Esse11.jpg;I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Esse111.jpg
100174‡I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Esse2.jpg;I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Esse22.jpg;I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Esse222.jpg
100175‡I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Cora1.jpg;I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Cora2.jpg;I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Cora3.jpg
100176‡I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\1+1.jpg
100177‡I:\INTERNET-SHOP\FOTOS\DINING ROOM\PIANCA\Abaco.jpg
100178‡I:\INTERNET-SHOP\FOTOS\WALL\PIANCA\People 9.jpg
100179‡I:\INTERNET-SHOP\FOTOS\WALL\PIANCA\Spazio 5.jpg
100180‡I:\INTERNET-SHOP\FOTOS\WALL\PIANCA\Spazio 6.jpg
100186‡I:\INTERNET-SHOP\FOTOS\SOFAS\PIANCA\boston uglovoy.jpg
100187‡I:\INTERNET-SHOP\FOTOS\SOFAS\PIANCA\boston.jpg
100188‡I:\INTERNET-SHOP\FOTOS\SOFAS\PIANCA\Asolo.jpg;I:\INTERNET-SHOP\FOTOS\SOFAS\PIANCA\Asolo2.jpg
100226‡I:\INTERNET-SHOP\FOTOS\SALE\a-style\IMAG5507.jpg
100244‡I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Morrison +.jpg
100247‡I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Floyd 1+.jpg;I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Floyd 2.jpg
100250‡I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Kalinda +.jpg
100253‡I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Broadway 1 +.jpg;I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Broadway 2.jpg
100254‡I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Blow 2 +.jpg
100256‡I:\INTERNET-SHOP\FOTOS\SOFAS\ALBERTA SALOTTI\Alberta Salotti\Overland +.jpg
нужно из него вытащить имена файлов с расширением и записать их в отдельный текстовый файл, перед названием каждого файла слеш в виде: \имя_файла.расширение и каждый новый файл с новой строки
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.04.2016, 14:54
Ответы с готовыми решениями:

Записать в текстовый файл все имена файлов в директории
Написать дополнительный файл, подключаемый к. cpp, который записывает в текстовый файл все имена файлов в директории и, соответственно,...

Дан текстовый файл. Записать в отдельный файл все симметричные строки исходного файла, являющиеся отдельными предложения
Работа с файлами и строками,если можно,то напишите код,а если можно,то ещё с объяснениями

Записать в текстовый файл размеры и имена файлов, размер которых больше заданного пользователем
записать в текстовый файл размеры и имена файлов, размер которых больше заданного пользователем. файл открыть в редакторе, имя которого...

10
 Аватар для Tsin
1180 / 488 / 188
Регистрация: 30.12.2012
Сообщений: 1,278
Записей в блоге: 2
12.04.2016, 15:13
Лучший ответ Сообщение было отмечено lion_forest как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
using System.IO;
 
namespace ConsoleApplication23
{
    class Program
    {
        static void Main(string[] args)
        {
            using (StreamReader sr = new StreamReader("in.txt"))
            {
                using (StreamWriter sw = new StreamWriter("out.txt"))
                {
                    while (!sr.EndOfStream)
                    {
                        string[] line = sr.ReadLine().Split(';');
                        foreach (var item in line)
                        {
                            sw.WriteLine(item.Substring(item.LastIndexOf('\\')));
                        }
                    }
                }
            }
        }
    }
}
1
0 / 0 / 0
Регистрация: 20.12.2014
Сообщений: 15
13.04.2016, 15:27  [ТС]
Tsin, не все имена файлов скопировались, вот привожу пример, правда из другого места, но названия файлов тут есть, файлы не найдены как раз потому, что в out.txt не скопировались имена файлов из in.txt, проверял вручную по поиску, их там просто нет, возможно из за длинных имен файлов?
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Файл не найден: /uploader/data/FOTOS/ACCESSORIES/AHURA/SH0025С.jpg Товар: 101798
Файл не найден: /uploader/data/FOTOS/ACCESSORIES/decor toscana/3329 - копия (3).jpg Товар: 102272
Файл не найден: /uploader/data/FOTOS/SOFAS/mm matriza/NN/18. Dega - NN- S- RELOTTI/Кресло Dega - NN- S- RELOTTI  (РОССИЯ).jpg Товар: 15428
Файл не найден: /uploader/data/FOTOS/SOFAS/LIBRO/PLAY/City_sawana.jpg Товар: 45814
Файл не найден: /uploader/data/FOTOS/SOFAS/LIBRO/ASTUS NEW/Astus_new.jpg Товар: 45817
Файл не найден: /uploader/data/FOTOS/SOFAS/LIBRO/PLAY/street_sawana.jpg Товар: 50803
Файл не найден: /uploader/data/FOTOS/SOFAS/mm matriza/voroneg/1/doge 295х113х115.jpg Товар: 54677
Файл не найден: /uploader/data/FOTOS/SOFAS/LIBRO/zipo/Libro_zipo.jpg Товар: 54971
Файл не найден: /uploader/data/FOTOS/SOFAS/LIBRO/zipo/Libro_zipo_2.jpg Товар: 54971
Файл не найден: /uploader/data/FOTOS/DINING ROOM/POLYWOOD/Princess/princess_dinner_room_stol.jpg Товар: 56352
Файл не найден: /uploader/data/FOTOS/ACCESSORIES/LES ANDRE/table 8238.jpg Товар: 57341
Файл не найден: /uploader/data/FOTOS/ACCESSORIES/LES ANDRE/Table 8734.jpg Товар: 57343
Файл не найден: /uploader/data/FOTOS/ACCESSORIES/LES ANDRE/Table 8953.jpg Товар: 57348
Файл не найден: /uploader/data/FOTOS/BEDROOM/CINOVA/NINFEA/Cinova_ninfea_bedroom_comodino_noce_f1.jpg Товар: 57895
Файл не найден: /uploader/data/FOTOS/BEDROOM/CINOVA/NINFEA/Cinova_ninfea_bedroom_como_noce.jpg Товар: 57898
Файл не найден: /uploader/data/FOTOS/BEDROOM/CINOVA/NINFEA/Cinova_ninfea_bedroom_letto2_noce_f1.jpg Товар: 57903
Файл не найден: /uploader/data/FOTOS/BEDROOM/CINOVA/NINFEA/Cinova_ninfea_bedroom_mirorr_f1.jpg Товар: 57904
Файл не найден: /uploader/data/FOTOS/ACCESSORIES/LES ANDRE/stand8249.jpg Товар: 59115
Файл не найден: /uploader/data/FOTOS/WALL/POLYWOOD/JOLLY/Jolly white 03 - копия.jpg Товар: 60503
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_komod.jpg Товар: 61605
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_servant_3_stvorki.jpg Товар: 61606
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_stol.jpg Товар: 61610
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_stul.jpg Товар: 61612
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_stul_ruchka.jpg Товар: 61613
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_vitrina_1.jpg Товар: 61614
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_zerkalo.jpg Товар: 61615
Файл не найден: /uploader/data/FOTOS/DINING ROOM/AGM/Prestige/Prestige_1_vitrina_1_ugol.jpg Товар: 61616
0
 Аватар для Tsin
1180 / 488 / 188
Регистрация: 30.12.2012
Сообщений: 1,278
Записей в блоге: 2
13.04.2016, 15:43
lion_forest, мой пример подогнан строго под те строки, что вы привели.
Программа работает корректно, если:
1) В строке ровно одна ссылка
2) В строке больше одной ссылки, и они разделены символом ';'
Если у вас в полной версии файла есть какие-либо другие правила размещения ссылок, то они не найдутся. Покажите те места, в которых программа не находит ссылки, а должна.
0
0 / 0 / 0
Регистрация: 20.12.2014
Сообщений: 15
13.04.2016, 16:07  [ТС]
Tsin, проблему я понял, некоторые имена файлов копируются вот так \��� �����-1.jpg, это проблема кодировки, как исправить?
А по количеству все верно, каждая строка обрабатывается
0
 Аватар для Tsin
1180 / 488 / 188
Регистрация: 30.12.2012
Сообщений: 1,278
Записей в блоге: 2
13.04.2016, 16:34
lion_forest, у StreamReader вторым параметром можно передавать Encoding. Попробуйте различные варианты.
1
0 / 0 / 0
Регистрация: 20.12.2014
Сообщений: 15
13.04.2016, 16:53  [ТС]
Tsin, спасибо огромное, помогли, решил проблему изменением кодировки исходного файла, теперь проблема со скриптом выгружающим файлы, тоже плохо на имена эти реагирует, но это уже не для этой темы
0
 Аватар для Tsin
1180 / 488 / 188
Регистрация: 30.12.2012
Сообщений: 1,278
Записей в блоге: 2
13.04.2016, 17:07
lion_forest, обращайтесь! Создавайте другую и вперёд) Чем смогу - помогу.
0
0 / 0 / 0
Регистрация: 20.12.2014
Сообщений: 15
14.04.2016, 10:16  [ТС]
Tsin, а можете написать программку для копирования названия файлов из вот такого вот файла, единственное что здесь не нужен слэш перед именем файла, тоесть из этих путей записать в новый файл только: имя_файла.расширение
Code
1
2
3
4
5
6
7
8
9
10
11
Файл не найден: /uploader/data/FOTOS/DINING ROOM/BETAMOBILI/ottocento italiano/1 - копия (2).jpg Товар: 86082
Файл не найден: /uploader/data/FOTOS/DINING ROOM/BETAMOBILI/ottocento italiano/1 - копия.jpg Товар: 86084
Файл не найден: /uploader/data/FOTOS/DINING ROOM/BETAMOBILI/ottocento italiano/1 - копия (3).jpg Товар: 86085
Файл не найден: /uploader/data/FOTOS/DINING ROOM/Accadueo design/Ancona/2 - ANCONA laquered beige 1 - копия.jpg Товар: 86150
Файл не найден: /uploader/data/FOTOS/DINING ROOM/VILLANOVA/ANGELIKA/Angelica_dinning_room_vitrina_2dv.jpg Товар: 8699
Файл не найден: /uploader/data/FOTOS/DINING ROOM/VILLANOVA/ANGELIKA/Angelica_dinning_room_komod.jpg Товар: 8700
Файл не найден: /uploader/data/FOTOS/DINING ROOM/VILLANOVA/ANGELIKA/Angelica_dinning_room_komod_4dv.jpg Товар: 8701
Файл не найден: /uploader/data/FOTOS/SOFAS/KEOMA/fiorenza/22 - копия.jpg Товар: 89075
Файл не найден: /uploader/data/FOTOS/SOFAS/Relotti/№298 parker 400 (1.jpg Товар: 89327
Файл не найден: /uploader/data/FOTOS/SALE/esterno mobili/фото 3.JPG Товар: 91173
Файл не найден: /uploader/data/FOTOS/SALE/esterno mobili/фото 1.JPG Товар: 91173
0
 Аватар для Tsin
1180 / 488 / 188
Регистрация: 30.12.2012
Сообщений: 1,278
Записей в блоге: 2
15.04.2016, 13:43
lion_forest, опять же, точно подогнанный под формат файла пример. Один чих, один лишний пробел - и это перестанет работать.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
static void Main(string[] args)
{
    using (StreamReader sr = new StreamReader("file.txt", Encoding.Default))
    {
        using (StreamWriter sw = new StreamWriter("out.txt"))
        {
            while (!sr.EndOfStream)
            {
                string line = sr.ReadLine();
 
                line = line.Substring(line.LastIndexOf('/') + 1); //Отрезаем строку слева до последнего '/'
                line = line.Substring(0, line.IndexOf(" Товар")); //Отрезаем строку справа
                sw.WriteLine(line);
            }
        }
    }
}
1
0 / 0 / 0
Регистрация: 20.12.2014
Сообщений: 15
19.04.2016, 10:42  [ТС]
Tsin, спасибо, в очередной раз выручаете, все работает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.04.2016, 10:42
Помогаю со студенческими работами здесь

Записать в текстовый файл даты создания и имена файлов, размер которых меньше заданного
Добрый вечер, можно пожалуйста попросить Вас решить задачку, кому не сложно. Буду очень благодарен. Можно еще попросить Вас писать код...

Из каждой строки текстового файла выделить первые два слова и записать их в отдельный файл
Добрый день! Помогите пожалуйста в решении простенькой задачки, второй день мучаюсь... ( Нужно из каждой строки текстового файла выделить...

Переписать в текстовый файл т1 содержимое текстового файла т2 но без пустых строк
написать программу которая переписывает в текстовый файл т1 содержимое текстового файла т2 но без пустых строк

Переписать в текстовый файл t1 содержимое текстового файла t2 без пустых строк
Описать процедуру npuce(t1, t2), переписывающую в текстовый файл t1 содержимое текстового файла t2, но без пустых строк. Пожалуйста,...

Переписать в текстовый файл t1 содержание текстового файла t2, но без пустых строк
Описать процедуру npuceftl,(2) переписывающую в текстовый файл t1 содержание текстового файла t2,но без пустых строк.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru