- 浏览: 1365633 次
- 性别:
- 来自: 陕西.西安
文章分类
最新评论
-
dare_:
经过试验 设置之后反而更慢没有调用ensureCapacity ...
ensureCapacity()方法提高ArrayList的初始化速度 -
wangchao9053:
[flash=200,200][url][img][list] ...
Only the original thread that created a view hierarchy can touch its views的相关 -
cyb504:
考虑将rb文件代码隐藏:我先使用命令jrubyc将所有rb文件 ...
Ruby学习十 JRuby中调用java代码 -
4562xse3460:
大哥,您这个写反了,差点误导我,我觉得看着就不对。百度第一条就 ...
portrait表示纵向,landscape表示横向 -
yin138:
portrait是肖像画,即竖屏,landscape是风景画, ...
portrait表示纵向,landscape表示横向
http://fuliang.iteye.com/blog/680502
从一个例子开始:如何将一个字符串转化成一个十六进制的串。一种方法是使用字符串的each_byte来做:
res = [] "abc".each_byte {|i| res << i} res.map {|i| i.to_s(16)}
写了三行才实现出来这个功能,非常不爽。我们看看unpack的强大功能吧:
"abc".unpack('H*')
一行代码搞定。
unpack将传入的参数作为指令,作用于调于的字符串,处理过程是一个流式的过程,每一个字符指令后面可能跟着一个数字,数字代表顺序作用于字符串字符的次数,*代表顺序作用域剩余的所有字符。
上面例子H*指令,代表每次取半字节的16进制数。
unpack可以非常方便的处理字符串的各种转换。
以下字符指令的参考表(来自rdoc):
Format | Returns | Function
-------+---------+-----------------------------------------
A | String | with trailing nulls and spaces removed
-------+---------+-----------------------------------------
a | String | string
-------+---------+-----------------------------------------
B | String | extract bits from each character (msb first)
-------+---------+-----------------------------------------
b | String | extract bits from each character (lsb first)
-------+---------+-----------------------------------------
C | Fixnum | extract a character as an unsigned integer
-------+---------+-----------------------------------------
c | Fixnum | extract a character as an integer
-------+---------+-----------------------------------------
d,D | Float | treat sizeof(double) characters as
| | a native double
-------+---------+-----------------------------------------
E | Float | treat sizeof(double) characters as
| | a double in little-endian byte order
-------+---------+-----------------------------------------
e | Float | treat sizeof(float) characters as
| | a float in little-endian byte order
-------+---------+-----------------------------------------
f,F | Float | treat sizeof(float) characters as
| | a native float
-------+---------+-----------------------------------------
G | Float | treat sizeof(double) characters as
| | a double in network byte order
-------+---------+-----------------------------------------
g | Float | treat sizeof(float) characters as a
| | float in network byte order
-------+---------+-----------------------------------------
H | String | extract hex nibbles from each character
| | (most significant first)
-------+---------+-----------------------------------------
h | String | extract hex nibbles from each character
| | (least significant first)
-------+---------+-----------------------------------------
I | Integer | treat sizeof(int) (modified by _)
| | successive characters as an unsigned
| | native integer
-------+---------+-----------------------------------------
i | Integer | treat sizeof(int) (modified by _)
| | successive characters as a signed
| | native integer
-------+---------+-----------------------------------------
L | Integer | treat four (modified by _) successive
| | characters as an unsigned native
| | long integer
-------+---------+-----------------------------------------
l | Integer | treat four (modified by _) successive
| | characters as a signed native
| | long integer
-------+---------+-----------------------------------------
M | String | quoted-printable
-------+---------+-----------------------------------------
m | String | base64-encoded
-------+---------+-----------------------------------------
N | Integer | treat four characters as an unsigned
| | long in network byte order
-------+---------+-----------------------------------------
n | Fixnum | treat two characters as an unsigned
| | short in network byte order
-------+---------+-----------------------------------------
P | String | treat sizeof(char *) characters as a
| | pointer, and return \emph{len} characters
| | from the referenced location
-------+---------+-----------------------------------------
p | String | treat sizeof(char *) characters as a
| | pointer to a null-terminated string
-------+---------+-----------------------------------------
Q | Integer | treat 8 characters as an unsigned
| | quad word (64 bits)
-------+---------+-----------------------------------------
q | Integer | treat 8 characters as a signed
| | quad word (64 bits)
-------+---------+-----------------------------------------
S | Fixnum | treat two (different if _ used)
| | successive characters as an unsigned
| | short in native byte order
-------+---------+-----------------------------------------
s | Fixnum | Treat two (different if _ used)
| | successive characters as a signed short
| | in native byte order
-------+---------+-----------------------------------------
U | Integer | UTF-8 characters as unsigned integers
-------+---------+-----------------------------------------
u | String | UU-encoded
-------+---------+-----------------------------------------
V | Fixnum | treat four characters as an unsigned
| | long in little-endian byte order
-------+---------+-----------------------------------------
v | Fixnum | treat two characters as an unsigned
| | short in little-endian byte order
-------+---------+-----------------------------------------
w | Integer | BER-compressed integer (see Array.pack)
-------+---------+-----------------------------------------
X | --- | skip backward one character
-------+---------+-----------------------------------------
x | --- | skip forward one character
-------+---------+-----------------------------------------
Z | String | with trailing nulls removed
| | upto first null with *
-------+---------+-----------------------------------------
@ | --- | skip to the offset given by the
| | length argument
-------+---------+-----------------------------------------
发表评论
-
rsync参数详解、利用ssh、rsync 实现数据的定时同步
2012-09-11 14:52 1581http://colderboy.blog.51cto.com ... -
putty
2011-12-02 10:50 1027http://www.iteye.com/topic/5606 ... -
haml
2011-12-01 22:53 1090http://aideehorn.iteye.com/blog ... -
ruby 生成随机数 和 随机字符串
2011-11-30 22:42 3398ruby 生成随机数 和 随机字符串 1,ra ... -
ruby and watir学习之_Hash 类
2011-11-20 17:53 1562http://www.cnblogs.com/zhangfei ... -
gem相关命令使用
2011-11-19 00:01 2759http://www.cnblogs.com/orez88/a ... -
Rails,启动-重要
2011-11-17 09:59 1673http://www.blogjava.net/sshwsfc ... -
使用 RSpec 进行行为驱动测试,配置分析
2011-11-11 13:21 1509http://huangzhimin.com/ < ... -
ruby的class与module的区别
2011-11-07 10:04 2254http://blog.163.com/rettar@126/ ... -
ruby invalid multibyte char (US-ASCII)
2011-11-05 01:57 4580要加上: # encoding: utf-8 一般要 ... -
File.split(pathname)
2011-11-05 01:42 2131http://www.kuqin.com/rubycndocu ... -
Ruby怎样获取操作系统的Name
2011-11-05 01:30 1214http://bbs.chinaunix.net/thr ... -
ruby环境变量的文件读取形式
2011-10-31 11:29 1795http://blog.csdn.net/normallife ... -
Ruby学习九 排序 sort
2011-10-26 20:06 3541h = ['1','10','11','2','4']A. p ... -
关于rails插件will_paginate的配置和用法
2011-10-26 15:56 4309http://selfcontroller.iteye.com ... -
ruby 中的 && ,|| ,!! (转)
2011-10-26 14:59 922http://selfcontroller.iteye.com ... -
Ruby中 respond_to? 和 send 的用法 .
2011-10-26 14:19 5301http://selfcontroller.iteye.com ... -
ruby 在线正则表达式 编辑器
2011-10-25 09:22 1703http://www.rubular.com/ -
ruby-Jruby,Xruby 转
2011-10-25 09:22 846ruby-Jruby,Xruby 2009年06月21 ... -
alias 与 alias_method的区别
2011-10-24 16:34 1742alias 与 alias_method的区别 (2009-7 ...
相关推荐
主要介绍了Lua UnPack函数用法实例,unpack它接受一个数组(table)作为参数,并默认从下标1开始返回数组的所有元素,需要的朋友可以参考下
This test case unpacks the compressed code for the MochiKit, jQuery, Dojo and Prototype JavaScript libraries.
mp-unpack mp-unpack
本篇文章是对二进制流接口应用实例 pack、unpack、ord 函数使用方法进行了详细的分析介绍,需要的朋友参考下
Quick Unpack v2.2 汉化版,全能脱壳工具,csdn上的都是汉化失败,乱码,没法用,就自己从新汉化,测试完成,下载请评价!
使用struck.unpack获取子字符串 复制代码 代码如下:import struct print struct.unpack(format, ‘Test astring’) #(‘Test’, ‘ing’) 来个简单的例子吧,有一个字符串’He is not very happy’,处理一下,把...
# unpack (you need the ncompress package for this to work) tar xf mangl.tar.Z release/xc/doc/man tar xf manglu.tar.Z release/xc/doc/man tar xf manglx.tar.Z release/xc/doc/man # configure and make ...
Themida Unpack Script 2
该脚本用于对boot.img进行分解,从而生成kernel镜像和ramdisk目录树
unpack foxpro vfpexe&nc
把脚本unpack_plist_2.py和图集文件xx_1.png、xx_1.plist、xx_2.png、xx_2.plist....放入同一个文件夹(可放多套图集),然后执行脚本,拆解后的小图在该文件夹下生成xx_1、xx_2...等对应的文件夹中
Resco Backup Unpack Tool,可以让用户在电脑端打开 Resco Backup 备份组文件。可以对备份组内容进行提取,然后拷贝到手持设备中。在某种程度上免除了完整恢复的麻烦。
https://blog.csdn.net/nini_boom/article/details/107085391
史上最全面的,批量拆分指定目录所有plist,层级与目标目录层级对应,plist拆分后为散图目录。弄了差不多3天时间,Python 2.7.10版本
有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用python的struct模块来完成.可以用 struct来处理...unpack(fmt, string) # 计算给定的格式(fmt)占用多少字节的内存 calcsize(fmt
ZProtect_HWID_&_Unpack_V1.0
msgpack-jruby gem 将不再更新,所有未来的开发都将进入 msgpack-ruby 项目,为所有 ruby 开发和维护单个 MessagePack 库。 JRuby 的消息包 JRuby 的 MessagePack 实现,构建在 MessagePack Java 库之上。 比...
Quick Unpack 全集木马加壳软件是一款木马加壳软件。现在的一般都能免杀。
webRTC_m79版本AECDump分析所用unpack_aecdump文件,注意该文件需要在linux环境下运行。
当前分支有一个使用unpack lib以便在发布之前调试lib的示例。 项目设置 npm install 编译和热重装以进行开发 npm run serve 编译并最小化生产 npm run build 整理和修复文件 npm run lint 项目结构 ├── examples ...