2011-09-07 53 views
2

假设传入的报告日期没有日期月份的前导零。通常它是以param1的形式传入的,但是在这个例子中,我强制给出一个值。需要将_YYYY_MM后缀添加到批处理文件中的文件名

我想构造一个字符串,从传入的日期中提取月份和年份,然后构造YYYY_MM格式的字符串,其中MM具有前导零。

REM SET ReportingDate=%1 
SET ReportingDate=7/31/2011 

@For /F "tokens=1,2,3 delims=/ " %%A in ("%ReportingDate%") do @( 
Set Month=%%A 
Set Day=%%B 
Set Year=%%C 
) 

echo Year=%Year% 
echo Month=%Month% 

SET NewFileName=MEMBOB_%Year%_%Month%.csv 

问:我对批处理文件的了解是有限的。当日期月份是1位数字时,我有什么办法强制montgh中的前导零?

回答

3

使用if-statement前面加上一个0,如果每月低于10:

if %Month% LSS 10 Set Month=0%Month% 
+0

感谢您的帮助。 – ChadD

相关问题