zoukankan      html  css  js  c++  java
  • 写了两个简单的小工具,文件夹文件操作的

    一,文件夹A下的文件夹下的文件,移到文件夹A下。

    二,经常上贴吧什么的,有些图贴,会直接网页全部保存为,结果是一个html文件,和引用资源的文件夹,文件夹下有很多无用的文件,写了个方法,把图片另存为,其余都删掉。

    代码。

    namespace 文件夹内容放到上级
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                folderBrowserDialog1.ShowDialog();
                this.textBox1.Text = folderBrowserDialog1.SelectedPath;
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                //得到所有的目录
                var a = Directory.GetDirectories(this.textBox1.Text);
    
                for (int i = 0; i < a.Length; i++)
                {
                    //得到目录下的文件
                    var b = Directory.GetFiles(a[i]);
                    //移动文件到父级
                    for (int j = 0; j < b.Length; j++)
                    {
                        string filename = GetFileName(b[j].ToString());
                        System.IO.File.Move(b[j], this.textBox1.Text + "\\" + filename);
                    }
                    //删除该目录
                    Directory.Delete(a[i], true);
                }
            }
    
            private void button3_Click(object sender, EventArgs e)
            {
                //得到所有的文件
                var a = Directory.GetFiles(this.textBox1.Text, "*.htm");
    
                for (int i = 0; i < a.Length; i++)
                {
                    int legth = a[i].Length;
                    //文件夹的名称。
                    int extlength=4;
    
                    if (a[i].IndexOf("html") > -1) {
                        extlength = 5;
                    }
                    string dpath = a[i].Substring(0, legth - extlength)+"_files";
                    //得到文件夹下的所有图片
    
                    ArrayList allimg = new ArrayList();
                    var jpgs = Directory.GetFiles(dpath, "*.jpg");
                    for (int jpg = 0; jpg < jpgs.Length; jpg++)
                    {
                        long size = new FileInfo(jpgs[jpg]).Length;
                        if (size > 10 * 1024)
                        {
                            allimg.Add(jpgs[jpg]);
                        }
    
                    }
                    var gifs = Directory.GetFiles(dpath, "*.gif");
                    for (int gif = 0; gif < gifs.Length; gif++)
                    {
                        long size = new FileInfo(gifs[gif]).Length;
                        if (size > 80 * 1024)
                        {
                            allimg.Add(gifs[gif]);
                        }
                    }
    
                    var bmps = Directory.GetFiles(dpath, "*.bmp");
                    for (int bmp = 0; bmp < bmps.Length; bmp++)
                    {
                        long size = new FileInfo(bmps[bmp]).Length;
                        if (size > 50 * 1024)
                        {
                            allimg.Add(bmps[bmp]);
                        }
                    }
    
                    //创建文件夹
                    string newdpaht = a[i].Substring(0, legth - extlength);
                    CreateFolder(newdpaht);
                    //把图片放到这个文件夹里。
    
                    foreach (var c in allimg)
                    {
                        string filename = GetFileName(c.ToString());
    
                        File.Move(c.ToString(), newdpaht + "\\"+filename);
                    }
                    // 删除原HTML和文件夹
                    File.Delete(a[i]);
                    Directory.Delete(dpath,true);
                }
            }/// <summary>
            /// 创建目录路径
            /// </summary>
            /// <param name="folderPath">物理路径</param>
            public static void CreateFolder(string folderPath)
            {
                if (!System.IO.Directory.Exists(folderPath))
                    System.IO.Directory.CreateDirectory(folderPath);
            }
    
            public static string GetFileName( string filePath)
            {
               
                    return filePath.Substring(filePath.LastIndexOf("\\") + 1, filePath.Length - filePath.LastIndexOf("\\") - 1);
            }
        }
    }
  • 相关阅读:
    取得窗口大小和窗口位置兼容所有浏览器的js代码
    一个简单易用的导出Excel类
    如何快速启动chrome插件
    网页表单设计案例
    Ubuntu下的打包解包
    The source file is different from when the module was built. Would you like the debugger to use it anyway?
    FFisher分布
    kalman filter
    Group delay Matlab simulate
    24位位图格式解析
  • 原文地址:https://www.cnblogs.com/zihunqingxin/p/3200454.html
Copyright © 2011-2022 走看看