Ruby进行文件信息输出实例代码

 更新时间:2008年11月28日 16:35:35   作者:  
数据是随机的,所以每次的记录都会不同。
演示代码:
[code]
#!/usr/bin/env ruby
COUNT = 10
require 'benchmark'
$account_chars = ('A'..'Z').to_a.delete_if {|c| c =~ /[AEIOUY]/ }
#$password_chars = ('0'..'9').to_a
$password_chars = Array.new
$password_chars[0..9] = ('0'..'9').to_a
$password_chars[10..36] = ('A'..'Z').to_a
def account_char
$account_chars[rand($account_chars.length)]
end
def password_char
$password_chars[rand($password_chars.length)]
end
def account_chars
account_chars = []
6.times {|c| account_chars << account_char }
account_chars
end
def password
begin
begin
password = ''
password << password_char
end while password == '0'
4.times { password << password_char }
end while password =~ /^(.)\1\1\1\1$/
password
end
accounts = {}
lines = []
puts Benchmark::CAPTION
puts Benchmark.measure {
COUNT.times do
i = 0
account_chars.inject(accounts) do |a, c|
i += 1
i == 6 ? a[c] = password : a[c] ||= {}
end
end
}
puts Benchmark.measure {
accounts.each do |char, chars|
account = [char]
chars.each do |char, chars|
account << char
chars.each do |char, chars|
account << char
chars.each do |char, chars|
account << char
chars.each do |char, chars|
account << char
chars.each do |char, password|
account << char
lines << "#{account.join}\t#{password}\r\n"
account.pop
end
account.pop
end
account.pop
end
account.pop
end
account.pop
end
end
}
puts Benchmark.measure {
open 'account.txt', 'wb' do |f|
f.print lines.delete_at(rand(lines.length)) until lines.empty?
end
}
运行后输出到: account.txt文件中。
输出信息格式如下:
数据是随机的,所以每次的记录都会不同。
SZQGMC XC6KP
HLVGTZ HCU30
KTSNNF LSNVS
KWMHRQ 3SM07
BTTZCZ DYMUH
DMKPVN GMJHL
KCFKDR X8X8V
VMMJHB X1D65
SRCPGZ T2IP6
WLRMBT 7YA2Y

相关文章

  • 在Ruby中处理日期和时间的教程

    在Ruby中处理日期和时间的教程

    这篇文章主要介绍了在Ruby中处理日期和时间的教程,包括时间的格式化等基本用法,需要的朋友可以参考下
    2015-04-04
  • Ruby中的public、private、protected区别小结

    Ruby中的public、private、protected区别小结

    这篇文章主要介绍了Ruby中的public、private、protected区别小结,即Ruby中访问控制符的区别总结,需要的朋友可以参考下
    2014-08-08
  • win7安装ruby on rails开发环境

    win7安装ruby on rails开发环境

    看到很多文章都说ruby环境在windows上是非常难搭建,会出现各种各样的怪问题,所以都推荐到linux和mac上安装开发。但是我按照教程搭了下,问题也不算太多。总过大概花费了2个半小时左右就完成了。下面就把安装的步骤及具体的版本记录了一下供大家参考。
    2014-07-07
  • Ruby进行文件信息输出实例代码

    Ruby进行文件信息输出实例代码

    数据是随机的,所以每次的记录都会不同。
    2008-11-11
  • Ruby语言建立Web服务器的过程详解

    Ruby语言建立Web服务器的过程详解

    这次选择的Web服务器是Nginx,Nginx非常适合处理静态资源,如图片、CSS和JS文件,通过减轻应用服务器的负担,Nginx使得Ruby on Rails应用能够更高效地运行,这篇文章主要介绍了Ruby语言建立Web服务器,需要的朋友可以参考下
    2024-06-06
  • 简单对比分析Ruby on Rails 和 Laravel

    简单对比分析Ruby on Rails 和 Laravel

    web应用程序开发中两个相对而言更加流行的框架是 Ruby on Rails 和 Laravel. 它们两个都是非常成熟的项目,已经面世相当长一段时间了 .
    2014-07-07
  • 优化Ruby代码使程序运行速度提高的例子

    优化Ruby代码使程序运行速度提高的例子

    这篇文章主要介绍了优化Ruby代码使程序运行速度提高的例子,文中引用的项目把一个Ruby项目的运行时间从20秒优化到1.5秒,效果非常明显,需要的朋友可以参考下
    2015-04-04
  • 浅析Ruby的源代码布局及其编程风格

    浅析Ruby的源代码布局及其编程风格

    这篇文章主要介绍了浅析Ruby的源代码布局及其编程风格,意为给大家推荐一种最为普通的Ruby代码编写风格,需要的朋友可以参考下
    2015-08-08
  • Ruby的面向对象编程的基础教程

    Ruby的面向对象编程的基础教程

    这篇文章主要介绍了Ruby的面向对象编程的基础教程,包括Ruby中各种有关类和对象的基础知识,需要的朋友可以参考下
    2015-04-04
  • Ruby生成随机数的方法总结

    Ruby生成随机数的方法总结

    在本文里小编给大家分享的是关于Ruby生成随机数的知识点方法,有需要的朋友们可以学习下。
    2019-01-01

最新评论