中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS学习入门 & 精彩文章 (教学室) » 请问怎样接受键盘输入的字符串?急急急!!!
作者:
标题: 请问怎样接受键盘输入的字符串?急急急!!! 上一主题 | 下一主题
lifeng5115
中级用户




积分 283
发帖 39
注册 2003-7-12
状态 离线
『楼 主』:  请问怎样接受键盘输入的字符串?急急急!!!

我想让DOS提示叫我输入字符串:
我输入字符后回车,所输入的字符就会保存在一个文件中。
like this 屏幕显示
please in put string:
我输入
ddddd
之后,我就可以在某个。txt文件中得到ddddd
然后在确认输入:
please put string again
如果这是输入和第一次不一样,就报错。
谢谢,恳请大家帮忙



我不是菜,是汤!!!
2003-8-8 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
cn_archer
元老会员

农民


积分 2903
发帖 991
注册 2003-7-23
来自 福建省
状态 离线
『第 2 楼』:  

我想这个要通过编程来解决了……
大体的思路是这样,先设置一个循环,然后在屏幕上输出 “Please input string:”,把用户输入的字串保存在变量中,然后再在屏幕上输出“Please put string again:”要求用户重新输入一次,将该数据和前面那个变量相比较,如果一致则保存到某个.txt文件中,如果不一致则报错。
只是一个简要的思路,用编程语言应该能很轻松的实现。



艰难奋长戟,万古用一夫

中国DOS联盟  http://www.cn-dos.net   欢迎大家来共同学习
我的MSN&E-Mail cn_archer@hotmail.com  QQ 56049418
2003-8-8 00:00
查看资料  发送邮件  发短消息 网志  OICQ (56049418)  编辑帖子  回复  引用回复
lifeng5115
中级用户




积分 283
发帖 39
注册 2003-7-12
状态 离线
『第 3 楼』:  关键是怎么把输入在屏幕上的字符存在变量里

关键是怎么把输入在屏幕上的字符存在变量里!!!!!!
要怎么set?
请给出程序好吗?



我不是菜,是汤!!!
2003-8-8 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
cn_archer
元老会员

农民


积分 2903
发帖 991
注册 2003-7-23
来自 福建省
状态 离线
『第 4 楼』:  

呵呵,这一步很简单啊。
C语言或者其它的编程语言我记得不太清楚了,用数据库语言来试着描述一下吧。

store space(6) to x      //这个6主要指他占多少位,可以自行设定
@10,10 say“Please input string:” get x picture "XXXXXX"
read

这样就可以了,好象在C语言里input等也都可以实现啊,不过具体的命令我记不太清了,所以只能讲个大略,:)



艰难奋长戟,万古用一夫

中国DOS联盟  http://www.cn-dos.net   欢迎大家来共同学习
我的MSN&E-Mail cn_archer@hotmail.com  QQ 56049418
2003-8-8 00:00
查看资料  发送邮件  发短消息 网志  OICQ (56049418)  编辑帖子  回复  引用回复
hzy
高级用户




积分 578
发帖 135
注册 2003-7-10
状态 离线
『第 5 楼』:  



  Quote:
以下是引用lifeng5115在2003-8-8 12:29:47的发言:
关键是怎么把输入在屏幕上的字符存在变量里!!!!!!
要怎么set?
请给出程序好吗?

用get加s
如:
get s "please in put string:"
这样,下一行命令中的 %get% 就是你刚才输入的字符串了!







[此贴子已经被作者于2003-8-8 18:33:53编辑过]




2003-8-8 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lifeng5115
中级用户




积分 283
发帖 39
注册 2003-7-12
状态 离线
『第 6 楼』:  

请问,get在批处理文件中可以使用吗???
我所说的接受输入是指在DOS下



我不是菜,是汤!!!
2003-8-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jeffyy
初级用户




积分 219
发帖 23
注册 2003-8-11
状态 离线
『第 7 楼』:  

好难!
看来我要多学学啊!

2003-8-12 00:00
查看资料  发送邮件  发短消息 网志  OICQ (51125150)  编辑帖子  回复  引用回复
Roy
管理员

專業島民



积分 4869
发帖 1633
注册 2002-12-10
状态 离线
『第 8 楼』:  



  Quote:
以下是引用lifeng5115在2003-8-8 11:16:52的发言:
我想让DOS提示叫我输入字符串:
我输入字符后回车,所输入的字符就会保存在一个文件中。
like this 屏幕显示
please in put string:
我输入
ddddd
之后,我就可以在某个。txt文件中得到ddddd
然后在确认输入:
please put string again
如果这是输入和第一次不一样,就报错。
谢谢,恳请大家帮忙

:: Get user input - includes error check
@echo off
set secondpass=
echo e100'set  input='>%temp%.\temp.dat
echo w>>%temp%.\temp.dat
echo q>>%temp%.\temp.dat
:input
echo.
if not %secondpass%.==1. echo Type in input
if %secondpass%.==1. echo Type in input again
echo.>%temp%.\temp.bat
FC con nul /lb1 /n |FIND.exe "1:" >> %temp%.\temp.bat
:: Error checking begins here
FIND "|" %temp%.\temp.bat > nul
if not errorlevel=1 goto error
FIND "=" %temp%.\temp.bat > nul
if not errorlevel=1 goto error
FIND " nul
if not errorlevel=1 goto error
FIND ">" %temp%.\temp.bat > nul
if not errorlevel=1 goto error
:: Error checking end
DEBUG %temp%.\temp.bat  nul
call %temp%.\temp.bat
if exist %temp%.\temp.?at del %temp%.\temp.?at
rem echo INPUT=%INPUT%
goto EOF
:error
echo.
echo @PROMPT Error - invalid characters: $Q $L $G $B> %temp%.\temp.bat
%comspec% /c %temp%.\temp.bat |FIND.exe "Error:"
goto input
:eof
if not %secondpass%.=1. echo %INPUT%>1st.txt
if not %secondpass%.=1. set secondpass=1
if %secondpass%.=1. type 1st.txt|find "%INPUT%">NUL
if errorlevel 1 goto notmatch
goto end

:notmatch
ECHO The input does not match!
goto end

:end




我的網站:http://mw16.2ya.com/ 我的網誌: http://scrappedblog.blogspot.com/
~
我的Winamp正在播放的歌曲:
2003-8-12 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
hzy
高级用户




积分 578
发帖 135
注册 2003-7-10
状态 离线
『第 9 楼』:  

不用这么复杂吧?

2003-8-13 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lifeng5115
中级用户




积分 283
发帖 39
注册 2003-7-12
状态 离线
『第 10 楼』:  

太复杂了^_^
我只要简单一点的。



我不是菜,是汤!!!
2003-8-13 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jhhjwok
中级用户




积分 278
发帖 52
注册 2003-6-10
状态 离线
『第 11 楼』:  

用INPUT可以了!

2003-10-16 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: