IT评测·应用市场-qidao123.com
标题:
图像移动插件
[打印本页]
作者:
没腿的鸟
时间:
2025-3-8 22:07
标题:
图像移动插件
在实际应用中,移动图片位置的需求大概出现在多种场景中。以下是一些常见的情况
1,
文件整理与分类
场景
:用户或系统天生的大量图片存储在一个文件夹中,需要根据特定规则(如日期、类型、主题等)举行分类整理。
示例
:将拍摄的照片按年份或月份移动到差别的文件夹中。
2.
主动化工作流
场景
:在主动化流程中,图片需要从一个处理阶段移动到下一个阶段。
图片上传到临时文件夹后,经过压缩或水印处理,再移动到正式存储文件夹。
图片从下载文件夹移动到编辑文件夹,供设计师处理。
3.
备份与归档
场景
:将图片从运动文件夹移动到备份文件夹,以释放空间或归档旧数据。
示例
:将一年前的图片从工作文件夹移动到归档文件夹。
4.
同步与分发
场景
:在多装备或多用户情况中,图片需要从一个位置同步到另一个位置。
示例
:将用户上传的图片从上传文件夹移动到共享文件夹,供其他用户访问。
将图片从本地文件夹移动到云存储或网络共享文件夹。
5.
图片处理后的存储
场景
:图片经过处理后(如裁剪、滤镜、压缩等),需要移动到另一个文件夹。
示例
:将处理后的图片从临时文件夹移动到发布文件夹。
6.
错误修复与重试
场景
:图片因某种原因未能正确处理,需要移动到特定文件夹以便重新处理或查抄。
示例
:将格式不支持的图片移动到“错误”文件夹,或将未乐成上传的图片移动到“重试”文件夹。
7.
权限管理
场景
:根据用户权限或访问控制,将图片移动到差别的文件夹。
示例
:将敏感图片移动到受保护的文件夹,或将公开图片移动到共享文件夹。
8.
图片分发与发布
场景
:将图片从编辑或稽核文件夹移动到发布文件夹,供最终用户访问。
示例
:将稽核通过的图片从“待发布”文件夹移动到“已发布”文件夹。
9.
临时存储清理
场景
:将临时文件夹中的图片移动到正式存储位置,以制止占用过多空间。
示例
:将用户上传的临时图片移动到永世存储文件夹。
10.
跨平台或跨装备传输
场景
:将图片从一台装备或平台的文件夹移动到另一台装备或平台的文件夹。
示例
:将手机中的图片移动到电脑的图片库中。
11.
图片分类与标志
场景
:根据图片内容或元数据(如分辨率、拍摄装备、标签等)将图片移动到差别的文件夹。
示例
:将高分辨率图片移动到“高清”文件夹,或将手机拍摄的图片移动到“手机照片”文件夹。
12.
防止重复处理
场景
:将已处理的图片移动到另一个文件夹,以制止重复处理。
示例
:将已压缩的图片移动到“已处理”文件夹。
13.
图片稽核流程
场景
:在图片稽核流程中,将图片移动到差别的文件夹以表示其状态。
示例
:将待稽核的图片移动到“待稽核”文件夹。将稽核通过的图片移动到“已通过”文件夹。将稽核未通过的图片移动到“未通过”文件夹。
14.
图片版本管理
场景
:将差别版本的图片移动到差别的文件夹,以便管理汗青版本。
示例
:将旧版本的图片移动到“汗青版本”文件夹。
15.
图片导出与共享
场景
:将图片从内部文件夹移动到外部文件夹,以便导出或共享。
示例
:将需要共享的图片移动到“共享”文件夹,或将需要导出的图片移动到“导出”文件夹。
演示Demo
源码
namespace Demo
{
public partial class Form1 : Form
{
private string FileObj;
private string FileDestination;
public Form1()
{
InitializeComponent();
}
private void uiButton1_Click(object sender, EventArgs e)
{
//创建文件夹浏览器控件对象
var dialog = new FolderBrowserDialog();
if (dialog.ShowDialog() == DialogResult.OK)
{
FileObj = dialog.SelectedPath;
//显示路径
tbx_Obj.Text = dialog.SelectedPath;
}
}
private void uiButton2_Click(object sender, EventArgs e)
{
//创建文件夹浏览器控件对象
var dialog = new FolderBrowserDialog();
if (dialog.ShowDialog() == DialogResult.OK)
{
FileDestination = dialog.SelectedPath;
//显示路径
tbx_Destination.Text = dialog.SelectedPath;
}
}
private void uiButton3_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}
private void uiButton4_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
}
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Enabled = false;
Action act;
DirectoryInfo di = new DirectoryInfo(FileObj);
try
{
// Determine whether the directory exists.
if (di.Exists)
{
int imgCount = Directory.GetFiles(FileObj).Length;
int cellCount = imgCount ; // 16;
act = delegate ()
{
labQuantity1.Text = cellCount.ToString() + "个";
};
this.Invoke(act);
}
}
catch (Exception ex)
{
}
DirectoryInfo di1 = new DirectoryInfo(FileDestination);
try
{
// Determine whether the directory exists.
if (di1.Exists)
{
int imgCount = Directory.GetFiles(FileDestination).Length;
int cellCount = imgCount; // 16;
act = delegate ()
{
labQuantity2.Text = cellCount.ToString() + "个";
};
this.Invoke(act);
}
}
catch (Exception ex)
{
}
moveFiles(FileObj, FileDestination);
timer1.Enabled = true;
}
private static void moveFiles(string srcFolder, string destFolder)
{
DirectoryInfo directoryInfo = new DirectoryInfo(srcFolder);
FileInfo[] files = directoryInfo.GetFiles();
foreach (FileInfo file in files) // Directory.GetFiles(srcFolder)
{
if (file.Extension == ".png" || file.Extension == ".jpg" || file.Extension == ".bmp")
{
file.MoveTo(Path.Combine(destFolder, file.Name));
}
}
}
}
}
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4