ruby数据库:ruby way的连接数据库

这边都只是个大概具体要自己去看文档了.   1 连接SQLite: require sqlite  db = SQLite::Database.("library.db")  db.execute("select title,author from books") do |row|   p row  end  db.close   2连接mysql: require mysql  m = Mysq... [阅读全文]

therubyway:ruby way的高级数据存取

经常我们需要以种更透明方式来存储和得到数据.Marshal模块提供了简单对象持久化,PStore 库建立在这项技术的上dbm 库使用像hash样并永久存贮在磁盘上.   1简单Marshaling   经常我们需要创建个对象然后为了以后使用保存它.ruby对这种对象持久化(或者说是Marshaling)提供了基本支持.Marshal 模块能够使员序列化和反序列化个ruby对象. # .gif' /... [阅读全文]

therubyway:ruby way的Io的 2

1 检测文件是否存在及其大小   FileTest exist?思路方法可以检测个文件是否存在: flag = FileTest::exist?("LochNessMonster") flag = FileTest::exists?("UFO") # exists? is a synonym for exist?  如果我们想要知道文件是否有内容可以使用File::Statzero? 思路方法: ... [阅读全文]

therubyway:ruby way的IO的一

1 打开和关闭个文件   类思路方法File. 打开个文件并将它例子化为个File对象他第个参数是文件名.   可选第 2个参数叫做 mode (这个也是从c得来).他意思是怎样打开个文件(读写或者其他).默认是r(也就是读). file1 = File.("one")    # Open for reading  file2 = File.("two", "w") # Open for writ... [阅读全文]

rssatom:ruby way的处理RSS和Atom

1 rss 标准库   RSS 是基于xml因此你能简单将它作为个xml来进行解析.可是事实上他有个更高级别专有解析器来解析他.此外RSS标准也很混乱   他有很多不便就是标准版本不兼容,RSS有0.9, 1.0, 和2.0版本.RSS版本就像制造热狗就是些除非你定要知道,否则你不想要知道细节.   ruby有个标准RSS库它包含0.9,1.0和2.0版本标准.区别版本的间尽可能做到了无缝处理.如... [阅读全文]

therubyway:ruby way的使用REXML解析xml

REXML 是个完全用ruby写processor ,他有多种api其中两个经典api是通过DOM-like 和SAX-like 来进行区分第种是将整个文件读进内存然后存储为个分层形式(也就是棵树了).而第 2种是"parse as you go",当你文件很大并且内存受到限制时候比较适合用这种   看下面book.xml:   引用library shelf="Recent Acquisitio... [阅读全文]

therubyway:ruby way的动态特性的 2

1 得到所定义实体列表   ruby反射api能够使我们在运行时检测类和对象因此我们下面将会介绍Module, Class, 和Object中定义些思路方法   Module模块有个constants 思路方法它将会返回系统中所有常量名包括类名和模块名nesting 思路方法则是返回当前点上嵌套模块列表.   Ruby代码 list = Math.constants  # ["E", "PI"] ... [阅读全文]

therubyway:ruby way的动态特性的一

1 动态evaluate代码   全局思路方法eval 编译并且执行段包含ruby代码片断串这是个很power机制它允许你建造在运行时   执行代码看下面例子:   Ruby代码 parameters = {}  ARGF.each do |line|  name, expr = line.split(/\s*=\s*/, 2)  parameters[name] = eval expr end ... [阅读全文]

therubyway:ruby way的高级OOP特性的 2

1 把代码像对象样存储   当你想要以对象形式存储块代码时候ruby给了你几种思路方法下面我们会介绍Proc 对象, Method 对象和 UnboundMethod 对象.   内置Proc 类包装ruby block到个对象.Proc对象像个blocks是个闭包而且保存了它定义时上下文:   Ruby代码 myproc = Proc. { |a| puts "Param is #{a}" } ... [阅读全文]

therubyway:ruby way的高级OOP特性的一

1 发送条消息给个对象   当你个思路方法时你也就是发送了条消息给个对象在ruby中我们能够在运行时决定那个思路方法被send 思路方法就是做这个他接受个symbol为参数.   举个简单例子假设我们要写个排序我们想要使用区别域作为比较key虽然我们这时可以用block可是如果使用send话我们能有个更优美写法:   Java代码  Person  attr_reader :name, :age,... [阅读全文]

therubyway:ruby way的OOP的 2

1 理解allocate   在些特殊环境中你可能需要不它构造器(也就是initialize)来创建个对象也就是说你想要创建个空对象.例如假设你有个对象它状态完全由它存取思路方法所确定因此如果你不是真想要个另外状态话思路方法是没必要.此时我们能allocate思路方法.   Ruby代码  Person  attr_accessor :name, :age, :phone   def initia... [阅读全文]

therubyway:ruby way的OOP的一

1 使用多个构造思路方法   在ruby中没有像c或者ruby中构造器可是我们依然能够创建出类似多个构造器:   Ruby代码   ColoredRectangle   def initialize(r, g, b, s1, s2)   @r, @g, @b, @s1, @s2 = r, g, b, s1, s2  end   def ColoredRectangle.white_rect(s1,... [阅读全文]
1 共1条 分1页