1、判断是否是目录,判断该目录是否存在
File.directory?(argu)
2、遍历目录
Dir.foreach(argu) do |f|
end
结果中包含"." ".."
3、改变工作目录
Dir.chdir(argu)
4、字符串移除前后空白
str.strip
返回新字符串
str.strip!
如果未改变,返回nil;如果改变,返回改变了的字符串自身
5、判断数组中是否包含某元素
array.include?(item)
6、查找字符串的子串
string.index(str)
如果找到子串,返回索引;没有找到子串,返回nil
7、获取目录中的所有文件
files = Dir.entries(dir_name)
files是字符串数组,元素是目录中文件的文件名,包括"."和".."。
文件名不是完整的路径
8、文件重命名
File.rename(old_file_name, new_file_name)
文件名必须是完整的路径
9、跨平台路径分隔符
File::SEPARATOR
10、创建文件夹
Dir.mkdir(dir_name)
11、字符串转换MD5
require 'digest/md5'
md5 = Digest::MD5.hexdigest(string)
12、long类型的整数转化为日期
Time.at(1283122880)
13、删除目录,目录中有文件就无法删除
Dir.rmdir(dir_str)
dir_str是字符串,相对当前目录
14、读取文件内容到一个字符串
str = IO.read('file_name')
file_name可以是个不包含路径的文件名
15、ActiveRecord连接数据库、获取所有的表
ActiveRecord::Base.establish_connection (
{
:adapter => :mysql2,
:host => '192.168.18.32',
:database => :xxx,
:username => :xxx,
:password => 'xxx'
}
)
ActiveRecord::Base.connection.tables
16、ActiveRecord删除表、判断表是否存在
ActiveRecord::Migration.drop_table(table_name)
ActiveRecord::Base.connection.table_exists?(table_name)
17、ruby正则表达式
regex = /(ab)/
str = "abcab"
m = regex.match(str)
puts m[0] #输出ab
puts m[1] #输出ab
puts m[2] #输出nil
m是MatchData类型的对象
m = str.scan(regex) #m包含所有匹配到的字符串,是一个数组类型的对象
m.each do |n|
puts n[0]
end
#输出
#ab
#ab
18、ActiveRecord禁用表名必须为复数
ActiveRecord::Base.pluralize_table_names = false