C# 导出Excel命名 时 获取保存时目标文件夹 下的 最大流水码

在导出Excel时 excel命名规范为:当前月日+'_'+2位流水码。
例:
在第一次导出到桌面时 文件名:0218_01 ,
当再一次导出到桌面时 应是 0218_02

2个回答

如果目录只有你这种格式的文件,Directory.GetFiles得到的是一个升序的文件名列表,最后一项就是最大的,自己split下得到数组,取第二项+1就得到新文件了,如果有其他文件名格式的文件,需要遍历才行了

这个是遍历的

         string prefix = DateTime.Now.ToString("MMdd") + "_";

        string []fns=Directory.GetFiles("桌面物理路径");
        int max=-1, i;
        foreach (string fn in fns)
        {
            if (fn.IndexOf(prefix) == 0)
            {
                string[] arr = fn.Split('_');
                i = int.Parse(arr[1]);
                max = Math.Max(max, i);
            }
        }
       max++;
       string newfn = prefix + max + ".xls";//fn就是要生成的文件名

@ showbo
无聊码农
因为导出的Excel可以自己选择路径,所以无法获得固定的 保存路径啊

cyf_xiaohao
cyf_xiaohao 回复无聊码农: 是webform哦,你说的是什么意思啊
大约 4 年之前 回复
showbo
支付宝加好友偷能量挖 你是winform?那生成一个文件在winform文件exe同目录下,每次对这个文件操作就行了
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问