无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3736|回复: 6
打印 上一主题 下一主题

[请教]如何用P处理判断一个拖放过来的对象是文件还是文件夹?[已解决]

[复制链接]
跳转到指定楼层
1#
发表于 2007-7-15 12:48:16 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
如题!
本人在修改毛桃的CAB压缩P处理成支持拖放时遇到一个问题,如何判断拖放过来的对象是文件或者文件夹:Q ,通过.???显然是不行的,因为有的文件没有后缀,有的文件夹还带".":L 望各位大大不吝赐教,这里谢谢先了:hug:

[ 本帖最后由 netwinxp 于 2007-7-15 10:07 PM 编辑 ]
7#
 楼主| 发表于 2007-7-15 22:04:25 | 只看该作者
原帖由 namejm 于 2007-7-15 20:22 发表
  演示代码如下:

@echo off
:main
cls
set input=
set /p input=      请把文件拉到本窗口:
set "input=%input:"=%"
cls
if exist "%input%\" (
    echo "%input%" 是文件夹
) else echo "%in ...

谢谢,谢谢,高手出手就是不一样:hug:
回复

使用道具 举报

6#
发表于 2007-7-15 21:50:55 | 只看该作者
楼上的代码很ok
试过了~
回复

使用道具 举报

5#
发表于 2007-7-15 20:22:05 | 只看该作者
  演示代码如下:

  1. @echo off
  2. :main
  3. cls
  4. set input=
  5. set /p input=      请把文件拉到本窗口:
  6. set "input=%input:"=%"
  7. cls
  8. if exist "%input%" (
  9.     echo "%input%" 是文件夹
  10. ) else echo "%input%" 是文件
  11. pause
  12. goto main
复制代码
回复

使用道具 举报

4#
 楼主| 发表于 2007-7-15 13:56:58 | 只看该作者
看来只能用dir 文件名或目录名>new.txt来判定了
new.txt中最后一行如果是0 个目录则肯定是文件,如果等于2个目录为空文件夹,大于2个目录则有内容。不知谁还有比较好的办法没?

[ 本帖最后由 netwinxp 于 2007-7-15 01:58 PM 编辑 ]
回复

使用道具 举报

3#
 楼主| 发表于 2007-7-15 13:42:54 | 只看该作者
不行啊,if exist 文件名或目录名 都会返回正确:L
回复

使用道具 举报

2#
发表于 2007-7-15 13:16:30 | 只看该作者
不懂,

Exist 行不行?不存在的文件就当文件夹?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-24 22:05

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表