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
enddisp('所有文件已移動完成!');% % 定義源文件夾(包含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.pswp.cn/diannao/75811.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/75811.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/75811.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

重溫Ubuntu 24.04 LTS

用戶調整 # 創建新用戶 sudo adduser newusername # 設置新用戶的密碼 sudo passwd newusername # 將新用戶添加到 sudo 組 sudo usermod -aG sudo newusername # 修改ssh訪問權限 sudo nano /etc/ssh/sshd_config # 將新用戶加入,此時root將無法訪問 AllowUsers n…

AWS Lambda 集成更新詳解:打造無縫云函數體驗

引言 AWS Lambda 作為一種無服務器計算服務,讓開發者能夠運行代碼而無需配置或管理服務器。隨著 AWS 不斷優化其服務,Lambda 的集成方式也在不斷更新和改進。本文將深入探討 Lambda 的最新集成選項,幫助您充分利用這一強大的無服務器計算平臺。 Lambda 集成類型概述 從圖…

基于Kubernetes部署Prometheus監控平臺

#作者:stackofumbrella 文章目錄 prometheus和k8s集群版本對照表架構Prometheus Operator簡介kube-prometheus下載地址 安裝修改鏡像地址修改Prometheus的service修改Grafana的service修改Alertmanager的service數據持久化執行安裝 Prometheus驗證Grafana驗證解決C…

Android之uCrop (裁剪) 的基本使用資料

Android 拍照、選擇圖片并裁剪 uCrop裁剪 uCrop裁剪2 uCrop裁剪3 1.權限檢查 private static final int REQUEST_CAMERA_PERMISSION 333; private void requestCameraPermission() {if (ContextCompat.checkSelfPermission(this, android.Manifest.permission.CAMERA)! …

STM32基礎教程——輸入捕獲模式測量PWM頻率

目錄 前言 技術實現 原理圖 連線圖 代碼實現 內容要點 PWM基本結構 開啟外設時鐘 配置GPIO端口 配置時基單元 初始化輸出比較單元 輸出比較通道重映射 輸入捕獲功能初始化 計算捕獲PWM的頻率 實驗結果 問題記錄 前言 IC(Input Capture)輸…

基于網啟PXE服務器的批量定制系統平臺(詳細版)

項目說明 該項目共分為2個子項目,由iventoy和定制安裝兩部分組成 該項目旨在復習鞏固系統服務部署使用、shell編程等知識,旨在讓學生增加知識面,提高項目實習經歷,充實簡歷 項目背景: 公司新購了一批服務器和臺式機…

旅游CMS選型:WordPress、Joomla與Drupal對比

內容概要 在旅游行業數字化轉型進程中,內容管理系統(CMS)的選擇直接影響網站運營效率與用戶體驗。WordPress、Joomla和Drupal作為全球主流的開源CMS平臺,其功能特性與行業適配性存在顯著差異。本文將從旅游企業核心需求出發&…

el-table下的復選框關聯勾選

效果展示&#xff1a; <el-table style"height: 500px;" :data"tableData" border empty-text"暫無數據" v-loading"loading":header-cell-style"{ text-align: center }" :cell-style"{ text-align: center }"…

解決Cubemx生產的 .ioc文件不能外部打開的方法

正常來說&#xff0c;cubemx生成的文件會有圖標 但是當圖標白色的時候&#xff0c;無法通過直接點擊這個文件進入cubemx 1.首先檢查java環境是不是裝的JAVA8&#xff0c;如果是的話進行第二步操作&#xff1b; 2.重新安裝一次cubemx&#xff0c;在安裝的時候選擇為我安裝&…

從零構建大語言模型全棧開發指南:第三部分:訓練與優化技術-3.1.3分布式數據加載與并行處理(PyTorch DataLoader優化)

?? 點擊關注不迷路 ?? 點擊關注不迷路 ?? 點擊關注不迷路 文章大綱 3.1.3 分布式數據加載與并行處理(`PyTorch DataLoader`優化)1. 大規模數據加載的挑戰與瓶頸分析1.1 數據加載流程的時間分解2. PyTorch DataLoader的深度優化策略2.1 核心參數調優2.2 分布式數據分片策…

K8S學習之基礎五十七:部署代碼掃描工具sonarqube

部署代碼掃描工具sonarqube 拉取postgres、sonarqube鏡像&#xff0c;在harbor上創建postgres、sonarqube項目&#xff0c;將鏡像上傳至harbordocker pull postgres docker pull sonarqube docker tat postgres:latest 172.16.80.140/postgres/postgres:latest docker tat sona…

RAG技術的進化:RQ-RAG查詢優化/化繁為簡Adaptive-RAG智能分類/精準出擊

嘿,親愛的算法探險家們!歡迎來到RAG技術的“奇幻冒險”之旅!?? 今天,咱們要一起探索的是如何讓大語言模型(LLM)從“呆萌小學生”進化成“機智博士生”的奇妙旅程! 想象一下,你正在和一個超級聰明的AI聊天,但它有時候會像個小迷糊,回答得讓你哭笑不得。這時候,RAG…

11:00開始面試,11:08就出來了,問的問題有點變態。。。

從小廠出來&#xff0c;沒想到在另一家公司又寄了。 到這家公司開始上班&#xff0c;加班是每天必不可少的&#xff0c;看在錢給的比較多的份上&#xff0c;就不太計較了。沒想到8月一紙通知&#xff0c;所有人不準加班&#xff0c;加班費不僅沒有了&#xff0c;薪資還要降40%…

滲透測試中發現ak/sk泄露時的驗證工具

項目地址&#xff1a;https://github.com/libaibaia/cloudsec啟動命令&#xff1a;java -jar cloudSec-1.2.2-SNAPSHOT.jar 訪問&#xff1a;http://localhost:8000/#/admin/login 默認用戶名密碼&#xff1a;admin/admin123 注&#xff1a;8000 端口運行&#xff0c;如占用先…

【藍橋杯】重點沖刺

【最高優先級】必考核心算法(占分60%以上) 動態規劃(DP) ?????? 背包問題:01背包、完全背包(必須掌握空間優化的一維寫法) 線性DP:最長上升子序列(LIS)、最長公共子序列(LCS) 路徑問題:網格路徑計數(含障礙物)、最小路徑和 經典模型:打家劫舍、股票買賣問…

藍橋杯python編程每日刷題 day 20

題目&#xff1a; 給定一個長度為 N 的整數序列&#xff1a;A1, A2, , AN。現在你有一次機會&#xff0c;將其中連續的 K 個數修改成任意一個相同值。請你計算如何修改可以使修改后的數列的最長不下降子序列最長&#xff0c;請輸出這個最長的長度。 最長不下降子序列是指…

游戲引擎學習第185天

回顧并計劃今天的內容 我們完成了開始整理這些數據的工作&#xff0c;但我們還沒有機會真正去查看這些數據的具體內容&#xff0c;因為我們只是剛剛開始了數據整理的基本工作。我們收集了大量的信息&#xff0c;但到目前為止&#xff0c;仍然沒有足夠的可視化工具來幫助我們理…

協議學習——1 NCDSSB

上次面試NCDssb, 今天特意學習下&#xff0c;除了物理層的定義&#xff0c;其實再很多物理層的書上都有&#xff0c;主要是講下RRC曾怎么玩的。 配置在專用BWP上配置&#xff0c;切實BWP的專用部分

pom.xml與.yml,java配置參數傳遞

pom.xml與 .yml java配置參數傳遞 在Java項目中&#xff0c;通過 pom.xml 和 .yml 文件&#xff08;如 application.yml&#xff09;傳遞變量通常涉及 構建時&#xff08;Maven&#xff09;和 運行時&#xff08;Spring Boot&#xff09;兩個階段的配置。以下是具體的實現方法&…

【解決】:VSCode 中識別不到電腦中的已安裝的 Git

# 問題 自己電腦中明明已經安裝了 git &#xff0c;但在 vscode 中確識別不到。——————————&#xff08;問題一樣就看下去&#xff0c;不一樣早早潤。省流&#xff01;&#xff01;&#xff01;&#xff01;&#x1f680;&#xff09; # 【第一步】首先要確認你電腦中…