当前位置: 首页 > article >正文

MATLAB 批量移动 TIF 文件至分类文件夹

文章目录

  • 前言
  • 一、步骤
  • 二、代码


前言

本代码用于从指定的源文件夹 (sourceFolder) 中筛选所有 .tif 文件,并根据文件名的特定关键词(Daynight 和 FDI)将其分类移动到相应的目标文件夹 (targetDaynightFolder 和 targetFDIFolder)。


一、步骤

主要步骤如下:

定义源文件夹和目标文件夹:确保目标文件夹存在,不存在则创建。

获取所有 .tif 文件:扫描源文件夹,提取所有 .tif 格式的文件。

文件分类移动:

    若文件名包含 Daynight,则移动至 targetDaynightFolder 目录。

    若文件名包含 FDI,则移动至 targetFDIFolder 目录。

执行完成提示:程序运行完毕后,显示“所有文件已移动完成!”的提示信息。

注:代码中包含一段被注释掉的旧版本,该版本原本是按年份子文件夹筛选 .tif 文件再进行分类,而当前版本已简化为直接遍历源文件夹下的所有 .tif 文件,提高了效率。

二、代码

lc; clear; close all;

% 定义源文件夹(包含所有 tif 文件)
sourceFolder = 'CSV\sum\day\';

% 定义目标文件夹
targetDaynightFolder = '\daynight';
targetFDIFolder = '\FDI';

% 确保目标文件夹存在,如果不存在则创建
if ~exist(targetDaynightFolder, 'dir')
    mkdir(targetDaynightFolder);
end
if ~exist(targetFDIFolder, 'dir')
    mkdir(targetFDIFolder);
end

% 获取 sourceFolder 目录下的所有 tif 文件
tifFiles = dir(fullfile(sourceFolder, '*.tif'));

% 遍历所有 tif 文件
for j = 1:length(tifFiles)
    filePath = fullfile(sourceFolder, tifFiles(j).name); % 当前文件路径
    
    % 判断是 Daynight 还是 FDI 文件
    if contains(tifFiles(j).name, 'Daynight', 'IgnoreCase', true)
        movefile(filePath, fullfile(targetDaynightFolder, tifFiles(j).name));
    elseif contains(tifFiles(j).name, 'FDI', 'IgnoreCase', true)
        movefile(filePath, fullfile(targetFDIFolder, tifFiles(j).name));
    end
end

disp('所有文件已移动完成!');

% % 定义源文件夹(包含2000-2021年的子文件夹)
% sourceFolder = '\sum\day\';
% 
% % 定义目标文件夹
% targetDaynightFolder = '\daynight';
% targetFDIFolder = '\FDI';
% 
% % 确保目标文件夹存在,如果不存在则创建
% if ~exist(targetDaynightFolder, 'dir')
%     mkdir(targetDaynightFolder);
% end
% if ~exist(targetFDIFolder, 'dir')
%     mkdir(targetFDIFolder);
% end
% 
% % 获取所有年份文件夹
% yearFolders = dir(sourceFolder);
% yearFolders = yearFolders([yearFolders.isdir]); % 仅保留文件夹
% yearFolders = yearFolders(~ismember({yearFolders.name}, {'.', '..'})); % 去除无效目录
% 
% % 遍历每个年份文件夹
% for i = 1:length(yearFolders)
%     yearPath = fullfile(sourceFolder, yearFolders(i).name); % 该年份的完整路径
%     
%     % 获取该文件夹下的所有 tif 文件
%     tifFiles = dir(fullfile(yearPath, '*.tif'));
%     
%     % 遍历所有 tif 文件
%     for j = 1:length(tifFiles)
%         filePath = fullfile(yearPath, tifFiles(j).name); % 当前文件路径
%         
%         % 判断是 Daynight 还是 FDI 文件
%         if contains(tifFiles(j).name, 'Daynight', 'IgnoreCase', true)
%             movefile(filePath, fullfile(targetDaynightFolder, tifFiles(j).name));
%         elseif contains(tifFiles(j).name, 'FDI', 'IgnoreCase', true)
%             movefile(filePath, fullfile(targetFDIFolder, tifFiles(j).name));
%         end
%     end
% end
% 
% disp('所有文件已移动完成!');

在这里插入图片描述


http://www.kler.cn/a/612272.html

相关文章:

  • 批量将多个彩色的 PDF 转换为黑白色
  • browser-use 库 DOM 树序列化工具
  • 主流云平台(AWS、华为云、阿里云、Google Cloud等)的**大数据及人工智能技术栈**及其核心组件的深度解析
  • HarmonyOS NEXT开发实战——TypeScript快速入门与ArkTS介绍
  • CentOS 8 Stream 配置在线yum源参考 —— 筑梦之路
  • OpenCV第2课 OpenCV的组成结构与图片/视频的加载及展示
  • 【Linux加餐-验证UDP:TCP】-windows作为client访问Linux
  • uniapp编译小程序报错,v-for中,非 h5 平台 :key 不支持表达式 chart+‘_‘
  • 常见框架漏洞(一)----Thinkphp(TP)
  • 音视频 二 看书的笔记 MediaPlayer
  • 阿里Qwen2.5-Omni:全能型多模态模型登场,视频实时互动碾压Gemini
  • Rust从入门到精通之精通篇:23.高级并发模式
  • FPGA中串行执行方式之使用时钟分频或延迟的方式
  • 光流 | 基于KLT算法的人脸检测与跟踪原理及公式,算法改进,matlab代码
  • Git入门——常用指令汇总
  • STM32 ADC 温度采集 可穿戴体温测量仪LMT70
  • Qt弹出新窗口并关闭(两个按钮)
  • 资本运营:基于Python实现的资本运作模拟
  • Java中用Stream流取出分组后每组最大值对象的ID
  • AI编辑器-Trae 玩转AI 编程