2 cyf xiaohao cyf_xiaohao 于 2016.02.18 11:53 提问

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

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

2个回答

showbo
showbo   Ds   Rxr 2016.02.18 12:15
已采纳

如果目录只有你这种格式的文件,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就是要生成的文件名
cyf_xiaohao
cyf_xiaohao   2016.02.18 12:20

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

cyf_xiaohao
cyf_xiaohao 回复无聊码农: 是webform哦,你说的是什么意思啊
接近 2 年之前 回复
showbo
showbo 你是winform?那生成一个文件在winform文件exe同目录下,每次对这个文件操作就行了
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!