开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 6550|回复: 1
收起左侧

[已回应] 类_数据流

[复制链接]
结帖率:80% (24/30)
发表于 2022-1-7 14:22:50 | 显示全部楼层 |阅读模式   广西壮族自治区北海市
欢迎改正
  
窗口程序集名保 留  保 留备 注
类_数据流, , 公开, stream   
变量名类 型数组备 注
Rdata字节集  
Rpos整数型  
Wdata字节集  

子程序名返回值类型公开备 注
_初始化  

子程序名返回值类型公开备 注
_销毁  

子程序名返回值类型公开备 注
Normal逻辑型 是否超出数据边界
返回 (Rpos > 0 Rpos ≤ 取字节集长度 (Rdata))
子程序名返回值类型公开备 注
移动到 移动当前读取的位置
参数名类 型参考可空数组备 注
位置整数型
Rpos = 位置
子程序名返回值类型公开备 注
取位置整数型 返回当前读取位置
返回 (Rpos)
子程序名返回值类型公开备 注
取剩余数据字节集 返回未读数据
返回 (取字节集右边 (Rdata, 取字节集长度 (Rdata) - Rpos + 1))
子程序名返回值类型公开备 注
取剩余长度整数型 返回未读数据长度
返回 (取字节集长度 (Rdata) - Rpos + 1)
子程序名返回值类型公开备 注
确认长度逻辑型 指定长度是否超出边界
参数名类 型参考可空数组备 注
长度整数型
如果真 (Normal ())
返回 ()
返回 (取剩余长度 () ≥ 长度)
子程序名返回值类型公开备 注
跳过 跳过指定字节数
参数名类 型参考可空数组备 注
字节数整数型
如果真 (Normal ())
Rpos = Rpos + 字节数

子程序名返回值类型公开备 注
跳到标志 跳到指定字节集(Flag)处)
参数名类 型参考可空数组备 注
标志字节集
如果真 (Normal ())
Rpos = 寻找字节集 (Rdata, 标志, Rpos)

子程序名返回值类型公开备 注
__输入__  

子程序名返回值类型公开备 注
预读字节字节型 读取当前字节
变量名类 型静态数组备 注
位置整数型 
位置 = pos
返回 (取字节集数据 (data, #字节型, 位置))
子程序名返回值类型公开备 注
读入数据字节集 导入数据并初始化
参数名类 型参考可空数组备 注
data字节集
如果真 (是否为空 (data))
Rdata = data
Rpos = 1
返回 (Rdata)
子程序名返回值类型公开备 注
从文件读入数据字节集 导入数据并初始化
参数名类 型参考可空数组备 注
文件路径文本型
变量名类 型静态数组备 注
hFile  
dataPTR  
dwRead  
dwSize  
hFile = CreateFileA (文件路径, 1073741824, 1, 0, 4, 128, 0)
dwSize = GetFileSize (hFile, 2147483647)
ReadFile (hFile, dataPTR, dwSize, dwRead, 0)
返回 (读入数据 (指针到字节集 (dataPTR, dwSize)))
子程序名返回值类型公开备 注
读取整数整数型 ReadInt 读取一段整数(4字节)
变量名类 型静态数组备 注
位置整数型 
位置 = Rpos
Rpos = Rpos + 4
返回 (取字节集数据 (Rdata, #整数型, 位置))
子程序名返回值类型公开备 注
读取短整数短整数型 ReadShort 读取一段短整数(2字节)
变量名类 型静态数组备 注
位置整数型 
位置 = Rpos
Rpos = Rpos + 2
返回 (取字节集数据 (data, #短整数型, 位置))
子程序名返回值类型公开备 注
读取字节字节型 ReadBin 读取一段字节
变量名类 型静态数组备 注
位置整数型 
位置 = Rpos
Rpos = Rpos + 1
返回 (取字节集数据 (data, #字节型, 位置))
子程序名返回值类型公开备 注
读取日期时间日期时间型 读取一段日期时间(8字节)
变量名类 型静态数组备 注
位置整数型 
位置 = Rpos
Rpos = Rpos + 8
返回 (取字节集数据 (data, #日期时间型, 位置))
子程序名返回值类型公开备 注
读取双精度双精度小数型 ReadDouble 读取一段双精度小数(8字节)
变量名类 型静态数组备 注
位置整数型 
位置 = Rpos
Rpos = Rpos + 8
返回 (取字节集数据 (data, #双精度小数型, 位置))
子程序名返回值类型公开备 注
读取定长文本文本型 读取一段文本
参数名类 型参考可空数组备 注
长度整数型
变量名类 型静态数组备 注
结果文本型 
结果 = 到文本 (取字节集中间 (Rdata, Rpos, 长度))
Rpos = Rpos + 长度
返回 (结果)
子程序名返回值类型公开备 注
读取文本文本型 读取一段文本
变量名类 型静态数组备 注
i整数型 
n整数型 
如果真 (Normal ())
返回 (“”)
i = 寻找字节集 (Rdata, { 0 }, Rpos)
i = 选择 (i > 0, i, 取字节集长度 (Rdata))
n = Rpos
Rpos = i + 1
返回 (到文本 (取字节集中间 (Rdata, n, i - n)))
子程序名返回值类型公开备 注
读取定长字节集字节集 读取一段字节集
参数名类 型参考可空数组备 注
长度整数型
变量名类 型静态数组备 注
结果字节集 
结果 = 取字节集中间 (Rdata, Rpos, 长度)
Rpos = Rpos + 长度
返回 (结果)
子程序名返回值类型公开备 注
读取字节集字节集 ReadBinary 读取一段字节集
变量名类 型静态数组备 注
结果字节集 
长度整数型 
长度 = 读取整数 ()
结果 = 取字节集中间 (data, pos, 长度)
pos = pos + 长度
返回 (结果)
子程序名返回值类型公开备 注
__输出__  

子程序名返回值类型公开备 注
写出到内存整数型 返回内存指针,太大会内存溢出
变量名类 型静态数组备 注
PTR整数型 
PTR = HeapAlloc (GetProcessHeap (), 9, 取字节集长度 (Wdata))
写到内存 (Wdata, PTR, 取字节集长度 (Wdata))
返回 (PTR)
子程序名返回值类型公开备 注
写出到内存文件整数型 返回文件号
变量名类 型静态数组备 注
id整数型 
id = 打开内存文件 ()
写出数据 (id, 取字节集长度 (Wdata) + Wdata)
返回 (id)
子程序名返回值类型公开备 注
写出到文件字节集 返回内容,失败返回空
参数名类 型参考可空数组备 注
文件路径文本型
类型整数型0:替换,1:置末
变量名类 型静态数组备 注
hFile  
dwWrite  
判断 (类型 = 0)
hFile = CreateFileA (文件路径, 1073741824, 1, 0, 4, 128, 0)
如果真 (hFile = -1)
返回 ({  })
如果真 (WriteFile (hFile, Wdata, 取字节集长度 (Wdata), dwWrite, 0) = 0)
返回 ({  })
CloseHandle (hFile)
返回 (Wdata)
判断 (类型 = 1)
hFile = CreateFileA (文件路径, 1073741824, 1, 0, 4, 128, 0)
如果真 (hFile = -1)
返回 ({  })
如果真 (SetFilePointer (hFile, 0, 0, 2) = -1)
返回 ({  })
如果真 (WriteFile (hFile, Wdata, 取字节集长度 (Wdata), dwWrite, 0) = 0)
返回 ({  })
CloseHandle (hFile)
返回 ({  })

子程序名返回值类型公开备 注
写出空 Null 写出为0的指定长度字节
参数名类 型参考可空数组备 注
长度整数型
Wdata = Wdata + 取空白字节集 (长度)
子程序名返回值类型公开备 注
写出整数字节集 WriteInt 写出一个整数
参数名类 型参考可空数组备 注
整数整数型
Wdata = Wdata + 到字节集 (整数)
返回 (Wdata)
子程序名返回值类型公开备 注
写出短整数字节集 WriteShort 写出一个短整数
参数名类 型参考可空数组备 注
短整数短整数型
Wdata = Wdata + 到字节集 (短整数)
返回 (Wdata)
子程序名返回值类型公开备 注
写出字节字节集 WriteBin 写出一个字节
参数名类 型参考可空数组备 注
字节字节型
Wdata = Wdata + 字节
返回 (Wdata)
子程序名返回值类型公开备 注
写出日期时间字节集 写出一个日期时间
参数名类 型参考可空数组备 注
日期时间日期时间型
Wdata = Wdata + 到字节集 (日期时间)
返回 (Wdata)
子程序名返回值类型公开备 注
写出双精度字节集 WriteDouble 写出一个双精度小数
参数名类 型参考可空数组备 注
双精度双精度小数型
Wdata = Wdata + 到字节集 (双精度)
返回 (Wdata)
子程序名返回值类型公开备 注
写出文本字节集 写出一个文本
参数名类 型参考可空数组备 注
文本文本型
Wdata = Wdata + 编码_Ansi到Utf8 (文本)
返回 (Wdata)
子程序名返回值类型公开备 注
写出字节集字节集 WriteBinary 写出一个字节集
参数名类 型参考可空数组备 注
字节集字节集
Wdata = Wdata + 取字节集长度 (字节集) + 字节集
返回 (Wdata)



评分

参与人数 1好评 +1 精币 +5 收起 理由
项目部004 + 1 + 5 感谢你的支持,精易有你更精彩

查看全部评分

结帖率:84% (41/49)

签到天数: 3 天

发表于 2023-12-29 09:13:56 | 显示全部楼层   河南省洛阳市
牛逼,能不能用数据流实现文件不落地读写配置
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表