Ruby如何进行文件操作


Posted in 面试题 onJuly 17, 2014
Ruby使用File类来操作文件,可以通过File.new来创建一个File类的实例并打开这个文件。
file = File.new(“testfile”, “r”)
# … process the file
file.close
testfile是想要操作的文件名,”r”说明了文件的操作模式为读取。可以使用”w”表示写入,”rw”表示读写。

最后要记得关闭打开的文件,确保所有被缓冲的数据被写入文件,所有相关的资源被释放。

也可以使用File.open来打开文件,open和new的不同是open可以使用其后的代码块而new方法则返回一个File类的实例。
File.open(“testfile”, “r”) do |file|
# … process the file
end

open操作的另一个优点是处理了异常,如果处理一个文件发生错误抛出了
异常的话,那么open操作会自动关闭这个文件,下面是open操作的大致实现:
class File
def File.open(*args)
result = f = File.new(*args)
if block_given?
begin
result = yield f
ensure
f.close
end
end
return result
end
end

对于文件的路径,Ruby会在不同的操作系统间作转换。例如,在Windows下,/ruby/sample/test.rb会被转化为\ruby\sample\test.rb。当你使用字符串表示一个Windows下的文件时,请记住使用反斜线先转义:
“c:\\ruby\\sample\\test.rb”
也可以使用File::SEPARATOR表示不同系操作统的路径分割符。

Tags in this post...

面试题 相关文章推荐
PHP中如何创建和修改数组
May 02 面试题
htmlentities() 和 htmlspecialchars()有什么区别
Jul 01 面试题
开发中都用到了那些设计模式?用在什么场合?
Aug 21 面试题
VC++笔试题
Oct 13 面试题
SQL Server笔试题
Jan 10 面试题
哪些情况下不应该使用索引
Jul 20 面试题
SQL面试题
Dec 09 面试题
数据库设计的包括哪两种,请分别进行说明
Jul 15 面试题
介绍一下HTTP、HTTPS和SSL
Dec 16 面试题
世界经理人咨询有限公司面试
Sep 23 面试题
Java基础面试题
Jul 19 面试题
这76道Java面试题及答案,祝你能成功通过面试
Apr 16 面试题
Ruby如何实现动态方法调用
Nov 18 #面试题
介绍一下Ruby的特点
Jan 20 #面试题
JPA的优势都有哪些
Jul 04 #面试题
J2EE中的容器都包括哪些
Aug 21 #面试题
J2EE面试题
Mar 14 #面试题
J2EE包括哪些技术
Nov 25 #面试题
J2EE的优越性主要表现在哪些方面
Mar 28 #面试题
You might like
php木马攻击防御之道
2008/03/24 PHP
php Static关键字实用方法
2010/06/04 PHP
php cookie的操作实现代码(登录)
2010/12/29 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
2014/06/09 PHP
PHP中使用json数据格式定义字面量对象的方法
2014/08/20 PHP
php定义参数数量可变的函数用法实例
2015/03/16 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
php屏蔽错误及提示的方法
2020/05/10 PHP
jquery常用方法及使用示例汇总
2014/11/08 Javascript
Vuejs第八篇之Vuejs组件的定义实例解析
2016/09/05 Javascript
JavaScript SHA-256加密算法详细代码
2016/10/06 Javascript
vue实现表格数据的增删改查
2017/07/10 Javascript
webpack打包js文件及部署的实现方法
2017/12/18 Javascript
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
JavaScript简单编程实例学习
2020/02/14 Javascript
python调用c++返回带成员指针的类指针实例
2019/12/12 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
利用Python函数实现一个万历表完整示例
2021/01/23 Python
H5仿微信界面教程(一)
2017/07/05 HTML / CSS
Volcom法国官网:美国冲浪滑板品牌
2017/05/25 全球购物
For Art’s Sake官网:手工制作的奢华眼镜
2018/12/15 全球购物
最畅销的视频游戏享受高达90%的折扣:CDKeys
2020/02/10 全球购物
区域总监的岗位职责
2013/11/21 职场文书
高二政治教学反思
2014/02/01 职场文书
七一党日活动总结
2014/07/08 职场文书
运动会广播稿200字(10篇)
2014/10/12 职场文书
2014房屋登记授权委托书
2014/10/13 职场文书
初中差生评语
2014/12/29 职场文书
财务经理岗位职责
2015/01/31 职场文书
2015年幼儿园大班工作总结
2015/04/25 职场文书
忠犬八公的故事观后感
2015/06/05 职场文书
党校团干班培训心得体会
2016/01/06 职场文书
创业的9条正确思考方式
2019/08/26 职场文书
python开发实时可视化仪表盘的示例
2021/05/07 Python
PyCharm 安装与使用配置教程(windows,mac通用)
2021/05/12 Python