zoukankan      html  css  js  c++  java
  • c# 保存文件名重复,追加(1)(2)......

    应用场景:c#程序生成文件,保存在指定路径中,但路径中已存在有同名的文件,

                      需要在生成的文件名后追加(1),有(1)则追加(2),自增

      private string getFileSavaPath(string fileName)
            {
                string localFilePath = "";
                SaveFileDialog sfd = new SaveFileDialog();
                sfd.Filter = "Excel表格(*.xlsx)|*.xlsx";
                //设置默认文件类型显示顺序 
                sfd.FilterIndex = 1;
                //保存对话框是否记忆上次打开的目录 
                sfd.RestoreDirectory = true;
                //对话框中默认保存的文件名
                sfd.FileName = fileName;
                //关闭覆盖警告
                sfd.OverwritePrompt = false;
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    localFilePath = sfd.FileName.ToString(); //获得文件路径
                    string directory = Path.GetDirectoryName(localFilePath);   //文件所在路径
                    string filename = Path.GetFileNameWithoutExtension(localFilePath);  //文件名
                    string extension = Path.GetExtension(localFilePath);    //文件后缀 带点(.)
                    int counter = 1;
                    string newFilename = string.Format("{0}{1}", filename, extension); //文件名+后缀
                    string newFullPath = Path.Combine(directory, newFilename);
                    while (File.Exists(newFullPath)) //如果文件存在,如果存在count+1,继续循环
                    {
                        newFilename = string.Format("{0}({1}){2}", filename, counter, extension); //文件名+(count)+后缀
                        newFullPath = Path.Combine(directory, newFilename);  //保存路径
                        counter++; //count+1
                    }
                    localFilePath = newFullPath;
                }
                else {
                    add_info_event("取消操作");
                }
           
                return localFilePath;
            }
  • 相关阅读:
    K最近邻kNN-学习笔记
    随机森林学习-sklearn
    matplotlib画堆叠条形图
    PCA和SVD最佳理解
    1,机器学习应用概述
    linux unzip 中文乱码解决方法
    python文件、文件夹操作OS模块
    利用pyecharts做地图数据展示
    描述机器学习之神经网络算法原理
    python-pandas 高级功能(通过学习kaggle案例总结)
  • 原文地址:https://www.cnblogs.com/yhood/p/11526005.html
Copyright © 2011-2022 走看看