Как найти похожий файл

Регистрация
28.01.2024
Сообщения
322
Благодарностей
33
Баллы
28
Всем привет!

есть 2 папки:

Папка 1 с файлами
4567.zip
4757.zip
45777.zip
6573.zip
45.zip
567.zip

И папка 2 с файлами
4567.rar
4757.rar
45777.rar
6573.rar
45.rar
567.rar

Нужно взять из 2 папок одинаковые файлы. Из папки 1 файл 45777 и папки 2 файл 45777

По идеи получается:
Получить список 1 папки - взять файл 45777
Как взять из 2 папки с таким же названием файл?
 

SanchoPancho

Client
Регистрация
09.12.2015
Сообщения
176
Благодарностей
88
Баллы
28
регуляркой вытягиваешь само название без .zip и ищешь во втором списке
 
Регистрация
28.01.2024
Сообщения
322
Благодарностей
33
Баллы
28
Последнее редактирование:

SanchoPancho

Client
Регистрация
09.12.2015
Сообщения
176
Благодарностей
88
Баллы
28
Получить строку / Содержит текст {name}.rar

в переменной {name} у нас лежит имя файла с первого списка
 
Последнее редактирование:
  • Спасибо
Реакции: уауауауа

Dmitriy_Zenno

Administrator
Регистрация
28.10.2025
Сообщения
496
Благодарностей
209
Баллы
43
Всем привет!

есть 2 папки:

Папка 1 с файлами
4567.zip
4757.zip
45777.zip
6573.zip
45.zip
567.zip

И папка 2 с файлами
4567.rar
4757.rar
45777.rar
6573.rar
45.rar
567.rar

Нужно взять из 2 папок одинаковые файлы. Из папки 1 файл 45777 и папки 2 файл 45777

По идеи получается:
Получить список 1 папки - взять файл 45777
Как взять из 2 папки с таким же названием файл?
Здравствуйте,

Можно через С# сниппет

C#:
string path1 = @"C:\Folder1"; // Путь к первой папке
string path2 = @"C:\Folder2"; // Путь ко второй папке

// Получаем имена файлов без расширений из первой папки
var files1 = Directory.GetFiles(path1)
    .Select(Path.GetFileNameWithoutExtension);

// Получаем имена файлов без расширений из второй папки
var files2 = Directory.GetFiles(path2)
    .Select(Path.GetFileNameWithoutExtension);

// Находим пересечение (общие имена)
var commonFiles = files1.Intersect(files2);

if (commonFiles.Any())
{
    project.SendInfoToLog("Найдены похожие файлы:", true);
    foreach (var name in commonFiles)
    {
        project.SendInfoToLog(name, true);
    }
}
else
{
    project.SendInfoToLog("Совпадений не найдено.", true);
}
 
  • Спасибо
Реакции: уауауауа

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)