lua拷贝二进制文件的方法

使用lua拷贝二进制文件相比文本文件复杂一点,方法如下

function copyFunc(targetPath,sourcePath)

  local rf = io.open(sourcePath,"rb") --使用“rb”打开二进制文件,如果是“r”的话,是使用文本方式打开,遇到‘0’时会结束读取

   local len = rf:seek("end")  --获取文件长度

  rf:seek("set",0)--重新设置文件索引为0的位置

  local data = rf:read(len)  --根据文件长度读取文件数据

  local wf = io.open(targetPath,"wb")  --用“wb”方法写入二进制文件

  wf:write(data,len)

   rf:close()

  wf:close()

end

时间: 2024-10-15 08:11:41

lua拷贝二进制文件的方法的相关文章

Lua 调用 Opencv 的方法

Lua 调用 Opencv 的方法 最近想用 Lua 调用 Opencv 进行相关像素级操作,如:bitwise_and 或者 bitwise_or,从而完成图像 IoU 的计算. 那么,怎么用 Lua 调用 Opencv 呢? 查了 Torch 的官方文档,发现只有这么几个可以调用的包: 链接: https://github.com/torch/torch7/wiki/Cheatsheet 然后,你点击一个进去,发现有这么一个方法,可以安装对应的 Opencv 包:  然后,你就在终端里输入:

拷贝包的方法和远程连接的方法

拷贝包的时候,方法有很多 1,可以使用crt (从windows上拷到linux上) 2, 可以使用winscp  (从windows上拷到linux上) 3,可以使用scp  (从linux上拷到linux上) 4, 可以使用winscp拷贝到一台主机,然后从这台主机scp到远程主机 5,也可以使用rz sz 上传工具 远程连接: 1,可以使用crt 2, 可以使用远程桌面连接 到远程主机  再从远程主机使用crt连接别的主机 3,可以使用crt连接主机,再在该主机上ssh 连接到别的主机 e

lua——元表、元方法、继承

[元表] 元表中的键为事件(event),称值为元方法(metamethod). 通过函数getmetatable查询任何值的元表,通过函数setmetatable替换表的元表. setmetatable(只能用于table)和getmetatable(用于任何对象) 语法:setmetatable (table, metatable),对指定table设置metatable      [如果元表(metatable)中存在__metatable键值,setmetatable会失败] 语法:tm

转: 关于Linux常用的二进制文件分析方法

当你在unix下拿到一个二进制文件但不知道它是什么的时候,可以通过以下方法得到一此提示 1. 最首先应该尝试strings命令,比如拿到一个叫cr1的二进制文件,可以: $ strings cr1 | more 里面可能会有一些对于这个cr1的描述,这些信息都是编译之后在程序中留下的一些文本性的说明,所以可能会告诉你这个文件是什么. 比如有输出: $ strings cr1 | more %s %s %s%s%s -> %s%s%s (%.*s) Version: 2.3 Usage: dsni

改进cocos2dx中lua读ccb的方法

cocos2dx自带的CCBProxy真弱,还好提供了一个CCBReaderLoader.lua,但是也不好用, 于是修改了一下CCBReaderLoader,下面直接贴代码了. function NewCCBuilderReaderLoad(strFilePath,proxy,owner) if nil == proxy then return end --print("ccbnew") local ccbReader = proxy:createCCBReader() local

Lua强大的元方法__newindex

本文转载于笨木头的博客,嘿嘿,向大神学习 这篇文章主要介绍了Lua中的元方法__newindex详解,本文讲解了查询与更新.监控赋值.通过table给另一个table赋值等内容,需要的朋友可以参考下 好吧,我写文章的进度已经赶不上看书的进度了,简单的几段文字就够我唠叨一篇文章了. 今天继续来说说元方法,与__index有点相似的__newindex元方法. 1.查询与更新 上一篇文章我们介绍了__index元方法,总结来说,__index元方法是用于处理调用table中不存在的字段. 注意,[调

【PHP】对象的复制(拷贝)与__clone()方法

参考链接: 1.php.net官网文档 - 对象复制 什么时候用到?摘自php.net: 在多数情况下,我们并不需要完全复制一个对象来获得其中属性.但有一个情况下确实需要:如果你有一个 GTK 窗口对象,该对象持有窗口相关的资源.你可能会想复制一个新的窗口,保持所有属性与原来的窗口相同,但必须是一个新的对象(因为如果不是新的对象,那么一个窗口中的改变就会影响到另一个窗口).还有一种情况:如果对象 A 中保存着对象 B 的引用,当你复制对象 A 时,你想其中使用的对象不再是对象 B 而是 B 的一

LUA OOP编程实现方法

lua原生不支持OOP特性 确实如此, 同时可以采用其它lua代码的方式实现OOP的特性. OOP四大特性 抽象 封装 继承 多态 http://www.cnblogs.com/xiaosongluffy/p/5072501.html 四大基本特性: 抽象:提取现实世界中某事物的关键特性,为该事物构建模型的过程.对同一事物在不同的需求下,需要提取的特性可能不一样.得到的抽象模型中一般包含:属性(数据)和操作(行为).这个抽象模型我们称之为类.对类进行实例化得到对象. 封装:封装可以使类具有独立性

java是通过值传递,也就是通过拷贝传递——通过方法操作不同类型的变量加深理解

head first java里写到“java是通过值传递的,也就是通过拷贝传递”,由此得出结论,方法无法改变调用方传入的参数.该怎么理解呢? 看例子: public class Test1 { public static void main(String[] args) { int x = 7; System.out.println("传入方法之前:x="+x); addOne(x); System.out.println("传入方法之后:x="+x);}priv