我有一个输入字段,用户正在插入文件名。然后正在创建具有此名称的文件。问题在于不同操作系统上的文件系统之间的差异。在用户方面,我有一个javascript regexp。这是:
/^[0-9a-zA-Z\^\&\'\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\+\~\_ ]{1,228}$/
它只允许使用字母数字字符和指定的符号。另外,我需要我的服务器端代码来尝试创建文件(如UNIX / LINUX OS中的touch命令)并处理错误(如果有的话)。我怎么能在Ruby上做到这一点?是否有更好的跨平台产品解决方案?
答案 0 :(得分:0)
我解决了文件名无效时捕获异常的问题并将其打印给用户。
begin
touch_file = open("#{@base_dir}#{file_name}", 'w')
if touch_file
#here goes code for opening file and inserting some text into it
end
rescue Exception => msg
#here I return msg.message to user
end