标题: 关于修改日期格式的问题
[打印本页]
作者: #four#
时间: 2006-11-15 04:16
标题: 关于修改日期格式的问题
请问在一个文本文件里如何把日期格式2006-1-1改为2006-01-01,而形如2005-10-11的格式保持不变.用批处理如何实现。
作者: zh159
时间: 2006-11-15 04:55
set Date$=2006-1-1
if "%Date$:~6,1%"=="-" set Date$=%Date$:~0,5%0%Date$:~5,1%%Date$:~6%
if "%Date$:~-2,1%"=="-" set Date$=%Date$:~0,-1%0%Date$:~-1%
echo %Date$%
作者: ccwan
时间: 2006-11-15 05:18
这貌似不是在一个文本文件里把日期格式2006-1-1改为2006-01-01
作者: namejm
时间: 2006-11-15 06:28
给一段演示代码:
@echo off
:: 假设 test.txt 中只有 2006-1-1 这一行内容,其余情形请自行扩充
setlocal enabledelayedexpansion
for /f "tokens=1-3 delims=-" %%i in (test.txt) do (
set str1=%%j
set str2=%%k
if "!str1:~1!"=="" set str1=0!str1!
if "!str2:~1!"=="" set str2=0!str2!
echo %%i-!str1!-!str2!
)
pause
作者: ccwan
时间: 2006-11-15 06:43
哈哈。谢谢,我省事了。
作者: #four#
时间: 2006-11-15 07:04
谢谢namejm的帮助
本人是个初学者
但是这句的判断我还是不太明白 if "!str1:~1!"=="" set str1=0!str1!
if "!str2:~1!"=="" set str2=0!str2!
谁能给我说说,我在这里先谢了.
作者: namejm
时间: 2006-11-15 07:17
RE #four#
请看这个帖子:
[简单索引]关于SET变量、延时变量、各种符号的用法……,你要的答案在顶楼的最后一个链接中。
作者: zh159
时间: 2006-11-15 07:40
if "!str1:~1!"=="" set str1=0!str1!
if "!str2:~1!"=="" set str2=0!str2!
可以换为
if !str1! LSS 10 set str1=0!str1!
if !str2! LSS 10 set str2=0!str2!