嗯 献丑了 本着学习的精神 加上需要用到 就写了下 这个东东
我测试了下 读取2.5M的文件转换文本字节集到文本文件 大概需要12秒左右
感觉慢慢的样子 不知道 我的方法是否有需要改进 或者 有更方便节能的方法 麻烦 告诉下噢 毕竟俺全是自己摸索学习 也没人交流 记忆又渣滓
求基友
|
字节集_转文本字节集_双版本 | 文本型 | | |
参_文件路径 | 文本型 | | | | 参_字节集数据 | 字节集 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_快速字节集 | 快速字节集对象 | | | 局_文件长度 | 整数型 | | | I | | | | 局_单个字节集 | 字节集 | | | 局_内存文件号 | 整数型 | | | 局_全部文本 | 文本型 | | | 局_已提取总数 | 整数型 | | | II | | | | 局_启动时间 | 整数型 | | | 局_转换用时 | 文本型 | | | 局_二次数 | 整数型 | | |
局_启动时间 = 取启动时间 ()如果真 (是否为空 (参_文件路径 ) = 真 且 是否为空 (参_字节集数据 ) = 真)返回 (“二选一 可直接用 文件路径 或 提供字节集数据”)如果真 (取反 (是否为空 (参_文件路径 )) )如果真 (文件是否存在 (参_文件路径 )) 局_快速字节集. 从文件读 (参_文件路径 )如果真 (取反 (是否为空 (参_字节集数据 )) )局_快速字节集. 添加 (参_字节集数据 )局_文件长度 = 局_快速字节集. 取长度 ()如果 (局_文件长度 > 100 × 10 )局_二次数 = 100 局_二次数 = 10 局_内存文件号 = 打开内存文件 ()变量循环首 (1, 局_文件长度, 1, I )局_已提取总数 = I × 局_二次数 如果真 (局_已提取总数 ≤ 局_文件长度 )如果 (局_文件长度 - 局_已提取总数 < 局_二次数 )局_单个字节集 = 局_快速字节集. 取字节集 (局_已提取总数, 局_文件长度 - 局_已提取总数 )局_单个字节集 = 局_快速字节集. 取字节集 (局_已提取总数, 局_二次数 )变量循环首 (1, 取字节集长度 (局_单个字节集 ), 1, II )写出文本 (局_内存文件号, 到文本 (到整数 (局_单个字节集 [II ])) + “,”)变量循环尾 ()如果真 (局_已提取总数 > 局_文件长度 )跳出循环 ()变量循环尾 ()局_快速字节集. 清除字节集 ()移到文件首 (局_内存文件号 )局_全部文本 = 读入文本 (局_内存文件号, )关闭文件 (局_内存文件号 )局_转换用时 = 到文本 ( (取启动时间 () - 局_启动时间 ) ÷ 1000 )输出调试文本 (“转换用时:” + 局_转换用时 )返回 (局_全部文本 )
|