Board logo

标题: [其他] 【已解决】批处理出现“此时不应有……”是什么问题 [打印本页]

作者: 尘丶    时间: 2015-6-3 19:38     标题: 【已解决】批处理出现“此时不应有……”是什么问题

这是txt的内容:
卡号|用户账户|密码|当前余额
001|张三|123451|¥100
002|李四|123452|¥500
003|王五|123453|¥1000
004|黄六|123454|¥1000
005|刘七|123455|¥2100
006|陈八|123456|¥400
007|郑九|123457|¥200
008|张五|123458|¥1500
009|郑一|123459|¥1800
010|张十|123450|¥5100
  1. :begin
  2. set /p "num=请输入你的卡号:"
  3. if "%num%"=="" (echo 输入错误。&ping -n 2 127.1>nul &cls&goto begin)
  4. set /p "mima=请输入你的密码:"
  5. if "%mima%"=="" (echo 输入错误。&ping -n 2 127.1>nul&cls&goto begin)
  6. for /f "skip=1 tokens=1-3 delims=|" %%a in (用户账户.txt) do (
  7.     if "%num%"=="%%a" (set /a t+=1)   
  8.     if "%mima%"=="%%c" (set /a t+=1)  
  9.     setlocal enabledelayedexpansion
  10.     if !t!==2 (goto t)
  11. )
  12. if %t%==0 (echo 卡号错误。&ping -n 2 127.1>nul &cls&goto begin)
  13. if %t%==1 (echo 密码错误。&ping -n 2 127.1>nul &cls&goto begin)
  14. :t
  15. echo %t%
复制代码
设置老是有问题,怎么改都有个问题,老是出现此时不应该有(echo,不然就是此时不应有if (
求大神帮忙,教教小弟错误在哪,更好的可以帮我修改下代码。
作者: bailong360    时间: 2015-6-3 22:04

if都改成这样
  1. if "!t!"=="2"
复制代码

作者: 尘丶    时间: 2015-6-4 11:11

回复 2# bailong360

这不成了字符串比较吗,而且改了输入些0010啥的数字还是会出现
    问题。
作者: salad    时间: 2018-4-1 17:04

if %t% equ 2
作者: Batcher    时间: 2018-4-2 09:54

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "t=0"
  4. :begin
  5. set /p "num=请输入你的卡号:"
  6. if "%num%"=="" (
  7.     echo 输入错误。
  8.     ping -n 2 127.1>nul
  9.     cls
  10.     goto begin
  11. )
  12. set /p "mima=请输入你的密码:"
  13. if "%mima%"=="" (
  14.     echo 输入错误。
  15.     ping -n 2 127.1>nul
  16.     cls
  17.     goto begin
  18. )
  19. for /f "skip=1 tokens=1-3 delims=|" %%a in (用户账户.txt) do (
  20.     if "%num%"=="%%a" (
  21.         set /a t+=1
  22.     )
  23.     if "%mima%"=="%%c" (
  24.         set /a t+=1
  25.     )
  26.     if !t!==2 (
  27.         goto t
  28.     )
  29. )
  30. if %t%==0 (
  31.     echo 卡号错误。
  32.     ping -n 2 127.1>nul
  33.     cls
  34.     goto begin
  35. )
  36. if %t%==1 (
  37.     echo 密码错误。
  38.     ping -n 2 127.1>nul
  39.     cls
  40.     goto begin
  41. )
  42. :t
  43. echo %t%
  44. pause
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2