1、判断是否是目录,判断该目录是否存在
2、遍历目录
结果中包含"." ".."
3、改变工作目录
4、字符串移除前后空白
返回新字符串
如果未改变,返回nil;如果改变,返回改变了的字符串自身
5、判断数组中是否包含某元素
6、查找字符串的子串
如果找到子串,返回索引;没有找到子串,返回nil
7、获取目录中的所有文件
files是字符串数组,元素是目录中文件的文件名,包括"."和".."。
文件名不是完整的路径
8、文件重命名
文件名必须是完整的路径
9、跨平台路径分隔符
10、创建文件夹
11、字符串转换MD5
12、long类型的整数转化为日期
日期转化为时间戳
13、删除目录,目录中有文件就无法删除
dir_str是字符串,相对当前目录
14、读取文件内容到一个字符串
file_name可以是个不包含路径的文件名
15、ActiveRecord连接数据库、获取所有的表
16、ActiveRecord删除表、判断表是否存在
17、ruby正则表达式
m是MatchData类型的对象
18、ActiveRecord禁用表名必须为复数
19、时间格式化
20、创建二维数组
21、
十六进制转十进制
十进制转二进制
二进制转十进制
22、解析json字符串
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)
日期转化为时间戳
Time.local(year, month, day, hour, minute, second).to_i
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
19、时间格式化
t = Time.now
t.strftime('%Y-%m-%d')
指令 描述
%a 星期几名称的缩写(比如 Sun)。
%A 星期几名称的全称(比如 Sunday)。
%b 月份名称的缩写(比如 Jan)。
%B 月份名称的全称(比如 January)。
%c 优选的本地日期和时间表示法。
%d 一个月中的第几天(01 到 31)。
%H 一天中的第几小时,24 小时制(00 到 23)。
%I 一天中的第几小时,12 小时制(01 到 12)。
%j 一年中的第几天(001 到 366)。
%m 一年中的第几月(01 到 12)。
%M 小时中的第几分钟(00 到 59)。
%p 子午线指示(AM 或 PM)。
%S 分钟中的第几秒(00 或 60)。
%U 当前年中的周数,从第一个星期日(作为第一周的第一天)开始(00 到 53)。
%W 当前年中的周数,从第一个星期一(作为第一周的第一天)开始(00 到 53)。
%w 一星期中的第几天(Sunday 是 0,0 到 6)。
%x 只有日期没有时间的优先表示法。
%X 只有时间没有日期的优先表示法。
%y 不带世纪的年份表示(00 到 99)。
%Y 带有世纪的年份。
%Z 时区名称。
%% % 字符。
20、创建二维数组
# 创建10×10的二维数组
a = Array.new(10) { Array.new(10) }
21、
十六进制转十进制
"f".hex
十进制转二进制
15.to_s(2)
二进制转十进制
puts 0b100
# 4
22、解析json字符串
require 'json'
JSON.parse('json字符串')
#返回Array或Hash