Board logo

标题: 怎样才能显示含特殊字符文件名 [打印本页]

作者: radem     时间: 2010-9-18 23:54    标题: 怎样才能显示含特殊字符文件名
一个含特殊字符的文件,如: &^file.txt,把它拖到一批处理的图标,如何使此P能打印出文件名?

作者: tongzj     时间: 2010-9-19 12:34
理论上是无法实现的,因为你拖动的文件名本身包含&符号,如果不用双引号括起来就会把脚本当作2个命令执行。 但是可以用命令行方式实现,脚本如下,执行方式: show.bat "c:\&^file.txt" @echo off echo %1

作者: radem     时间: 2010-9-22 00:53
谢谢解答,希望能解决。。。

作者: radem     时间: 2010-12-27 18:43
纠结啊。。。

作者: netbenton     时间: 2010-12-27 19:54
楼主可试试这个代码看看合不合你的要求~~
@echo off&SETLOCAL ENABLEDELAYEDEXPANSION
set "fn=%~1
echo !fn!
pause

作者: radem     时间: 2010-12-30 20:01
还是无法显示

作者: mkd     时间: 2011-1-1 21:23
set "wfiles=%cmdcmdline:"=%"
call set "wfiles=%%wfiles:*%~d0=%%"
call set "wfiles=%%wfiles:*%~d1=%%"
call set "wfiles=%%wfiles: %~d1=" "%~d1%%"
set wfiles="%~d1%wfiles%"

for %%a in (%wfiles%) do @echo %%~nxa
pause
有些文件名,如:&(.txt 整个路径必须带有空格,才能显示 如:C:\A BC\DEF\&(.txt C:\ABC\D EF\&(.txt C:\ABC\DEF\G &(.txt

作者: radem     时间: 2011-1-3 15:33
仅以余最高的评分感谢楼上的答复!