如何确定变量是否不是“空格”

时间:2016-02-07 19:55:58

标签: variables batch-file

我正在制作一个新软件,你必须在其上注册。我有以下代码:

:LOOP
set CHO=?
set /p CHO=
if "%CHO%"=="?" goto LOOP
echo %CHO% > txt.txt
*more code*

因此问题在于,如果用户决定按空格输入,则%CHO%为“ECHO已关闭”。这可以解决将文本文件中的内容导出到程序中,如下所示:

set /p CHO_PROBLEM=<txt.txt
if "%CHO_PROBLEM%"=="ECHO is off." goto BUG

但是这里出现了真正的问题,如果系统是西班牙语,法语,......怎么办? (其他语言比英语)。它说“ECHO已关闭。”在语言中......那么,有什么方法可以解决这个问题吗?我指的是如果%CHO%不等于“?”,则允许用户设置他的用户名。或者“ECHO关闭”。 (所有语言)。

2 个答案:

答案 0 :(得分:1)

使用

echo(%cho%

顺便说一下 - 你的邮政编码陈述echo CHO应该回复CHO

答案 1 :(得分:1)

这是一个简单的测试;剥离空格字符以测试单个或多个空格。

:LOOP
set CHO=?
set /p CHO=
if "%CHO%"=="?" goto LOOP
if "%CHO: =%"=="" goto LOOP
echo %CHO% > txt.txt