[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理怎样把日期月份替换成中文汉字?

用以下代码
  1. @echo off
  2. set  year=%date:~0,4%
  3. set  month=%date:~5,2%
  4. set  day=%date:~8,2%
  5. set  /a yesterdayb=daya-1
  6. echo %year% %month% %yesterday%
  7. pause
复制代码
当前显示 2011 5 5

我想得到 2011 五月 5 这样的数据 请问有什么办法吗
五月是指当月
  1. set /a n=100
  2. for %%a in (一 二 三 四 五 六 七 八 九 十 十一 十二) do set /a n=n+month&set "!n:~1!=%%a月"
复制代码
这句话不知道怎么才能用上 是不是要if判断?多谢
目前是一个批处理初学者,问的傻问题还请多多见谅

2# hucuibai
好方法
但是我后面改下的怎么始终没有赋予statdate变量 新的值呢?

@echo off&setlocal enabledelayedexpansion
set  statdate=%date%
set  year=%date:~0,4%
set  month=%date:~5,2%
set  day=%date:~8,2%
set  /a yesterday=%day%-1
for /f "tokens=%month% delims= " %%a in ("一 二 三 四 五 六 七 八 九 十 十一 十二") do (set "!statdate! =%yesterday% %%a月 %year%")
echo %statdate%
pause
目前是一个批处理初学者,问的傻问题还请多多见谅

TOP

5# hanyeguxing
谢谢 ~~~
另外问下 3楼我写的那个
就是不该用延迟变量我用了 就会出现无法赋新值的问题啊?
目前是一个批处理初学者,问的傻问题还请多多见谅

TOP

返回列表