免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1763 | 回复: 1
打印 上一主题 下一主题

[求助]一个输入输出程序close(handle0后就输出暂停需要按任意件才能继续 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-12-07 11:06 |只看该作者 |倒序浏览
写了一个 perl脚本 输入输出的功能 不过到 close(handle)这里程序就停住(输入暂停了不是程序停止)需要按 下 任意件才能 继续输出 有什么好办法没??

还有一个问题 就是判断 输入的 y/n的  怎么判断输入是否为一个字符(用正则表达式)请高人指点

感觉正则表达式确实够神奇和恐怖 嘿嘿

#-----Get

$i=1;
#file name
print "input the file name you want: ";
chop($file_name=<STDIN>;

#string
print "input the string you want to save: ";
chop ($save_string=<STDIN>;

#name
print "input your name: ";
chop ($name=<STDIN>;

#-----Doing
while($i==1){
$i=1;



if(!(-e $file_name)){print "The " . $file_name ." does't exist do you want Create and Save String to it?[y/n]"; }
chop($create_flag=<STDIN>;
if(length($create_flag)==1)
        {
        if($create_flag=~m/^[n|y]/){$i=0};
    }else {$i=0;$create_flag="y"};

};


#---check out create_flag

if($create_flag eq "y"
{
#-create
open(handle, ">>$file_name";
print handle ($save_string . "\n";
print handle ("By - " . $name . "\n";
close(handle);
print "Save Completed\n";
}else{
  print "you don't want to create file , So program exit \n";
   #exit the program because user doesn't want create file
};





#-----End

论坛徽章:
0
2 [报告]
发表于 2007-12-07 12:42 |只看该作者
1. 'Press any key to continue...'的通用办法参见
http://bbs.chinaunix.net/viewthr ... hlight=%C8%CE%D2%E2
的6楼.

Windows上简便办法 system('pause');

2. 你不是已经判断了  if($create_flag=~m/^[n|y]/) 吗?
    里面的|是多余的, 可以改为 =~ /^[ny]$/i  忽略大小写
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP