Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 48

Найти файл с таким же названием, но другим расширением

30.10.2015, 07:52. Показов 1556. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Подскажите, пожалуйста, я вывожу в QTreeWidget файлы с расширением jpg из папки , т.е существует условие, если название файла содержит "jpg", то вывести его в дерево. Теперь я хочу так же выводить во второй столбец файлы с таким же названием но с расширением "png". Причем файл jpg должен быть на одной линии (в одной строке) с файлом png.
Вот такая задачка) Подскажите советом
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.10.2015, 07:52
Ответы с готовыми решениями:

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

Как создать файл с названием которого вводиться в консоль с расширением .txt
c++

Запись текста в файл с другим расширением
Здравствуйте! Есть компонент Memo(в моем случае SynMemo) и SaveDialog. Как сохранить текст из Memo в файл, который имеет расширение не txt,...

6
205 / 165 / 41
Регистрация: 25.10.2013
Сообщений: 527
30.10.2015, 10:27
Также как вбиваете в первый столбец имена файлов - вбивайте и во второй. Только удаляйте их расширения(с помощью QFileInfo) и ставьте своё png.
0
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 48
30.10.2015, 11:03  [ТС]
Если бы это было так просто. Хотя может я не понимаю чего-то. Подскажите,пожалуйста, исходя из представленного ниже кода, что как сделать.
Заранее благодарю!)


Вот код функции:
C++ (Qt)
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
void MainWindow::AddChild (QTreeWidgetItem *parent) /*Функция для рекурсивного заполнения дерева*/
{
   
     QDir* rootDir = new QDir(parent->text(3));
 
     rootDir->setFilter(QDir::Dirs|QDir::NoDotAndDotDot|QDir::Files);/*Устанавливается фильтр,для того чтобы устранить из дерева предыдущую директорию (..) и существующую (.)*/
 
     QString mask_PNG = ".PNG";
     QString mask_JPG=".JPG";
 
     QFileInfoList filesList = rootDir->entryInfoList();
 
     foreach(QFileInfo fileInfo, filesList)
     {
 
         QTreeWidgetItem* child = new QTreeWidgetItem();
 
         if(fileInfo.isDir())
         {
            child->setText(3,fileInfo.filePath());
            child->setText(0,fileInfo.fileName());
            parent->addChild(child);
            AddChild(child);
 
         }
 
         else if (fileInfo.fileName().contains(mask_JPG,Qt::CaseSensitive))
         {
 
            [B][COLOR="Red"]/*ВОТ ЗДЕСЬ ПО ИДЕЕ Я ДОЛЖЕН НАЙТИ ФАЙЛЫ С РАСШИРЕНИЕМ PNG И ВПИСАТЬ child->setText(1,fileInfo.fileName());  */[/COLOR][/B]
 
            child->setText(0,fileInfo.fileName());
            child->setText(2,QString::number(fileInfo.size()));
            parent->addChild(child);
 
         }
         else
 
            delete child;
         }
 
         parent->setExpanded(true);
     }
0
205 / 165 / 41
Регистрация: 25.10.2013
Сообщений: 527
30.10.2015, 11:58
Ну так и вписывай туда
C++ (Qt)
1
child->setText(1,fileInfo.completeBaseName() + ".png");
А заодно подумай, как сработает твоя система на файле с название ".jpg history.doc"
1
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 48
30.10.2015, 17:07  [ТС]
Shtirliz72, Дружище, спасибо конечно за ответ. Но вот ты предлагаешь мне вписывать строчку в нужный столбец тривиджета, добавлять к нему расширение png вручную. Добро. Но а как проверить то, существует ли действительно такой файл или нет, если да, то действительно добавить в нужный столбец строку, если нет, то пропустить. Я неправильно изначально задал вопрос( блин, тупанул! Мне ведь не просто строчку надо добавлять, а проверить реально существует ли файл с таким же названием в папке, но с расширением png

Извини если что, я еще совсем начинающий, но хочется сделать такую штуку
0
205 / 165 / 41
Регистрация: 25.10.2013
Сообщений: 527
30.10.2015, 17:29
Лучший ответ Сообщение было отмечено DrewHackzero как решение

Решение

Строчку вписывать в нужный абзац тривиджета предложил ты, я лишь немного подправил, чтобы в выходящем тексте у файла было другое расширение.
Цитата Сообщение от DrewHackzero Посмотреть сообщение
Shtirliz72, Дружище, спасибо конечно за ответ. Но вот ты предлагаешь мне вписывать строчку в нужный столбец тривиджета, добавлять к нему расширение png вручную. Добро. Но а как проверить то, существует ли действительно такой файл или нет, если да, то действительно добавить в нужный столбец строку, если нет, то пропустить. Я неправильно изначально задал вопрос( блин, тупанул! Мне ведь не просто строчку надо добавлять, а проверить реально существует ли файл с таким же названием в папке, но с расширением png
Извини если что, я еще совсем начинающий, но хочется сделать такую штуку
Понял. Тогда тоже самое, но немного по другому:
C++ (Qt)
1
2
QFileInfo pngInfo(fileInfo.path() + QDir::separator() + fileInfo.completeBaseName() + ".png")
pngInfo.isFile(); // возвращает true если данный файл существует
1
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 48
31.10.2015, 16:30  [ТС]
Shtirliz72, Я весьма тебе благодарен! Спасибо за помощь, дружище!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.10.2015, 16:30
Помогаю со студенческими работами здесь

Создание потока таким образом, чтобы файл был доступен другим программам
Здравствуйте Я создаю поток для записи в бинарный файл: using (FileStream stream = new FileStream("file.bin",...

Узнать полный путь с названием и расширением файла своей программы
Как узнать полный путь с названием и расширением файла своей программы?

Изменить данные в файле и пересохранить его под другим названием
Привет всем. Консольное приложение Linux. Задача: Открыть файл на чтение, через определенную функцию изменить в нем данные переданныхе...

Компиляция библиотеки с другим расширением
Добрый день, может ли кто-нибудь объяснить, как скомпилировать dll библиотеку, но с другим расширением Проще говоря Есть проект addon,...

Подключения файлов с другим расширением
Доброго времени суток всем. Подскажите плиз кто нить, возможно ли подключить в файл рнр, файл не рнр, не html, а скажем vbs , на...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru