日期:2014-05-17  浏览次数:20986 次

大三新生——读取变化文件名称问题?
文件名Z_SEVP_C_BABJ_20130125001050_P_RFFC-SCMOC-201301250000-16812.TXT
文件名=  常数+变量+常数;字母都是常量;前一段日期是随着年月日时分秒变化的,年月日可以确定,时分秒变化较大,无法确定
本人想法:1、遍历包含这个文件的文件夹,将文件名读出来
          2、对文件名进行匹配,如果包含“Z_SEVP_C_BABJ_”+
“_P_RFFC-SCMOC-201301250000-16812.TXT”这两段字符串,就得出文件名


但是出现错误,原因可能是我匹配的时候需要按照固定的顺序来比对,但是程序是一个字符一个字符的比对,求高手帮忙,感激不尽。
代码如下:
string Name1=“”;
 DirectoryInfo TheFolder = new DirectoryInfo("D:\\预警、重要报告、通报\\多家模式集成预报\\中央");
                        foreach (FileInfo NextFile in TheFolder.GetFiles())
            {
               
                if (NextFile.FullName.Contains("Z_SEVP_C_BABJ") && NextFile.FullName.Contains("_P_RFFC-SCMOC-" + myStrFileName) && NextFile.FullName.Contains("0000-16812"))
                {
                    Name1 = NextFile.FullName;
                   MessageBox.Show(Name1 );
                }
               


             }
发帖目的:希望能够按照固定顺序比对文件名称

------解决方案--------------------
把    foreach (FileInfo NextFile in TheFolder.GetFiles()) 这句改成
    foreach (FileInfo NextFile in TheFolder.GetFiles("Z_SEVP_C_BABJ*_P_RFFC-SCMOC-*0000-16812*.txt"))
就可以了,里面判断可以去掉