Directory Utilitys class Dir def Dir.escape(path) path_new = [] path.unpack("C*").map{ |n| # meta char if( %q{"$&'()*/;<>?[\\`|}.include?(n) ) path_new.push(0x5C) path_new.push(n) else path_new.push(n) end } path_new.pack("C*") end # get ext def Dir.getExt( fullpath ) len = fullpath.rindex('.') return "." if len==nil fullpath[ len , fullpath.length-len ] end # change ext def Dir.subExt( filename , newext ) return if filename.rindex('.')==nil newext = ('.'+newext) if newext[0]!='.' filename.sub!( /\..+/,newext ) end end