中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-07-02 05:02
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » set或echo 如何连接或加上特殊字符 查看 691 回复 2
楼 主 set或echo 如何连接或加上特殊字符 发表于 2008-02-11 12:59 ·  中国 浙江 嘉兴 海宁市 电信
中级用户
★★
积分 360
发帖 216
注册 2007-05-29 17:41
19年会员
UID 89677
性别 男
状态 离线
set da=2008-01-02" " & chr(13) & "2009-01-02

现在我想将变量前后加上引号:如下
da="2008-01-02" " & chr(13) & "2009-01-02"

但是我试了多次都没办法正确加上?不知道是何故?如下:
㈠set da="%da%"&echo %da%

㈡set da="%da%
set da=%da%"
echo %da%

㈢再或者echo "%da%"


都不能正确加上引号?是什么原因!

[ Last edited by bd123456789 on 2008-2-11 at 01:01 PM ]
2 发表于 2008-02-13 00:22 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
E:\Cmd>set da="2008-01-02" " & chr(13) & "2009-01-02"

E:\Cmd>echo %da%
"2008-01-02" " & chr(13) & "2009-01-02"

E:\Cmd>
3 转义符的运用 发表于 2008-02-13 10:42 ·  中国 浙江 嘉兴 海宁市 电信
中级用户
★★
积分 360
发帖 216
注册 2007-05-29 17:41
19年会员
UID 89677
性别 男
状态 离线
::呵呵,总于弄明白了:
echo 2008" & chr(13) & "2009
::能够正常显示
pause
echo "2008" ^& chr(13) ^& "2009"
::能够正常显示
pause

::set da=2008" & chr(13) & "2009
::在da前后加上一个引号,下行会出错
set da="%da%"
::正解
set da=^"%da%^"


::我测试的案例:
set c=0
:bof
set /a c=%c%+1
set bl=" ^& chr(13) ^& "
set da=2008-01-02
set dat=%da%%bl%%dat%
if not %c%==3 goto:bof
set dat=^"%dat%^"
::set dat=%dat:~0,1%
echo msgbox %dat%>110.vbs
pause
goto:eof

感谢版主!
论坛跳转: