Tcl-7. binary命令

本文介绍了Tcl中的binaryformat和binaryscan命令,用于二进制数据的压缩和恢复。binaryformat将数值转换为二进制格式,而binaryscan则能从二进制数据中提取出原始值。示例展示了如何将数字25664进行二进制压缩并在之后成功恢复原值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

binary format 就是将数值根据规定模式对 Tcl 的普通数据进行二进制压缩,

而 binary scan 作用相反,是从二进制数值恢复 Tcl 普通数据。

下面列举了这两个 binary 命令的作用。 首先用 binary format 对数值字符串”25664”进行二进制压缩,然后从压缩了的二进制值用 binary scan 恢复。

>set b [binary format "s" 25664]

=> @d ;#整数 25664 以十六进制表示为 6440H。 “s”为格式说明 ;

#符,按照由低到高字节顺序存储。

>puts $b ;#数值被压缩为两个字节,输出的结果为两个压缩字节对

=> @d ;#应的两个字符,@的 ASCII 码为 40H,d 的 ASCII 码为 64H

>binary scan $b "s" var

=> 1 ;#返回转换成功的次数

>puts $var ;#binary scan 从二进制数 b 中将数值恢复并存入变量 var

=> 25664

>binary scan 1 c var ;#从字符 1 中恢复数值。字符 1 的 ASCII 码=31H,31H 对应十

=>1 ;#进制整数为 49

>puts $var

=> 49

[语法]: binary format spec value1 ?value2 ...?

              binary scan str spec var1 ?var2 ...?

Microsoft Windows [版本 10.0.19045.5608] (c) Microsoft Corporation。保留所有权利。 F:\789>BUILD_EXE.PY 正在准备构建环境... 安装依赖... Looking in indexes: https://mirrors.aliyun.com/pypi/simple/ Requirement already satisfied: pandas in d:\python\py3.13\lib\site-packages (2.3.0) Requirement already satisfied: openpyxl in d:\python\py3.13\lib\site-packages (3.1.5) Requirement already satisfied: tabulate in d:\python\py3.13\lib\site-packages (0.9.0) Requirement already satisfied: pyinstaller in d:\python\py3.13\lib\site-packages (6.14.1) Requirement already satisfied: pillow in d:\python\py3.13\lib\site-packages (11.2.1) Collecting tkinterdnd2 Downloading https://mirrors.aliyun.com/pypi/packages/08/c3/e04f004a53c00dc01126b6f998264cef672c6883c36aa4bd65845a8eb4c0/tkinterdnd2-0.4.3-py3-none-any.whl (493 kB) Requirement already satisfied: numpy>=1.26.0 in d:\python\py3.13\lib\site-packages (from pandas) (2.3.1) Requirement already satisfied: python-dateutil>=2.8.2 in d:\python\py3.13\lib\site-packages (from pandas) (2.9.0.post0) Requirement already satisfied: pytz>=2020.1 in d:\python\py3.13\lib\site-packages (from pandas) (2025.2) Requirement already satisfied: tzdata>=2022.7 in d:\python\py3.13\lib\site-packages (from pandas) (2025.2) Requirement already satisfied: et-xmlfile in d:\python\py3.13\lib\site-packages (from openpyxl) (2.0.0) Requirement already satisfied: setuptools>=42.0.0 in d:\python\py3.13\lib\site-packages (from pyinstaller) (80.9.0) Requirement already satisfied: altgraph in d:\python\py3.13\lib\site-packages (from pyinstaller) (0.17.4) Requirement already satisfied: pefile!=2024.8.26,>=2022.5.30 in d:\python\py3.13\lib\site-packages (from pyinstaller) (2023.2.7) Requirement already satisfied: pywin32-ctypes>=0.2.1 in d:\python\py3.13\lib\site-packages (from pyinstaller) (0.2.3) Requirement already satisfied: pyinstaller-hooks-contrib>=2025.4 in d:\python\py3.13\lib\site-packages (from pyinstaller) (2025.5) Requirement already satisfied: packaging>=22.0 in d:\python\py3.13\lib\site-packages (from pyinstaller) (25.0) Requirement already satisfied: six>=1.5 in d:\python\py3.13\lib\site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0) Installing collected packages: tkinterdnd2 Successfully installed tkinterdnd2-0.4.3 应用图标已创建 开始打包... 6173 INFO: PyInstaller: 6.14.1, contrib hooks: 2025.5 6173 INFO: Python: 3.13.3 6209 INFO: Platform: Windows-10-10.0.19045-SP0 6209 INFO: Python environment: D:\python\py3.13 6211 INFO: wrote F:\789\TableToMD.spec 6214 INFO: Removing temporary files and cleaning cache in C:\Users\0\AppData\Local\pyinstaller 6216 INFO: Module search paths (PYTHONPATH): ['F:\\789', 'D:\\python\\py3.13\\python313.zip', 'D:\\python\\py3.13\\DLLs', 'D:\\python\\py3.13\\Lib', 'D:\\python\\py3.13', 'D:\\python\\py3.13\\Lib\\site-packages', 'D:\\python\\py3.13\\Lib\\site-packages\\setuptools\\_vendor', 'F:\\789'] 7096 INFO: Appending 'datas' from .spec 7096 INFO: checking Analysis 7097 INFO: Building Analysis because Analysis-00.toc is non existent 7097 INFO: Running Analysis Analysis-00.toc 7097 INFO: Target bytecode optimization level: 0 7098 INFO: Initializing module dependency graph... 7099 INFO: Initializing module graph hook caches... 7137 INFO: Analyzing modules for base_library.zip ... 8830 INFO: Processing standard module hook 'hook-heapq.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 9191 INFO: Processing standard module hook 'hook-encodings.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 11186 INFO: Processing standard module hook 'hook-pickle.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 12917 INFO: Caching module dependency graph... 12954 INFO: Looking for Python shared library... 12974 INFO: Using Python shared library: D:\python\py3.13\python313.dll 12975 INFO: Analyzing F:\789\table_to_md.py 13040 INFO: Processing standard module hook 'hook-pandas.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 15345 INFO: Processing standard module hook 'hook-platform.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 15455 INFO: Processing standard module hook 'hook-sysconfig.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 15522 INFO: Processing standard module hook 'hook-numpy.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 16434 INFO: Processing standard module hook 'hook-difflib.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 16776 INFO: Processing standard module hook 'hook-multiprocessing.util.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 17001 INFO: Processing standard module hook 'hook-xml.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 19675 INFO: Processing pre-safe-import-module hook 'hook-typing_extensions.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\pre_safe_import_module' 19689 INFO: SetuptoolsInfo: initializing cached setuptools info... 24695 INFO: Processing standard module hook 'hook-charset_normalizer.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 25329 INFO: Processing standard module hook 'hook-pytz.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 28322 INFO: Processing standard module hook 'hook-pandas.io.formats.style.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 30856 INFO: Processing standard module hook 'hook-pandas.plotting.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 31746 INFO: Processing standard module hook 'hook-openpyxl.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 31993 INFO: Processing standard module hook 'hook-lxml.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 32622 INFO: Processing standard module hook 'hook-lxml.etree.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 32885 INFO: Processing standard module hook 'hook-xml.etree.cElementTree.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 33332 INFO: Processing standard module hook 'hook-PIL.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 33454 INFO: Processing standard module hook 'hook-PIL.Image.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 34198 INFO: Processing standard module hook 'hook-PIL.ImageFilter.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 35938 INFO: Processing standard module hook 'hook-sqlite3.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 36474 INFO: Processing standard module hook 'hook-pandas.io.clipboard.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 36845 INFO: Processing standard module hook 'hook-dateutil.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 37119 INFO: Processing pre-safe-import-module hook 'hook-six.moves.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\pre_safe_import_module' 37549 INFO: Processing standard module hook 'hook-xml.dom.domreg.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 38305 INFO: Processing pre-find-module-path hook 'hook-tkinter.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\pre_find_module_path' 38309 INFO: TclTkInfo: initializing cached Tcl/Tk info... 38898 INFO: Processing standard module hook 'hook-_tkinter.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 38996 INFO: Processing standard module hook 'hook-tkinterdnd2.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 39036 INFO: Analyzing hidden import 'xlwt' 39037 ERROR: Hidden import 'xlwt' not found 39038 INFO: Processing module hooks (post-graph stage)... 39258 INFO: Processing standard module hook 'hook-lxml.isoschematron.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 39283 WARNING: Hidden import "jinja2" not found! 39592 INFO: Processing standard module hook 'hook-PIL.SpiderImagePlugin.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 39653 INFO: Processing standard module hook 'hook-_tkinter.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks' 39655 INFO: Processing standard module hook 'hook-lxml.objectify.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\_pyinstaller_hooks_contrib\\stdhooks' 39673 INFO: Performing binary vs. data reclassification (1560 entries) 40208 INFO: Looking for ctypes DLLs 40268 INFO: Analyzing run-time hooks ... 40273 INFO: Including run-time hook 'pyi_rth_inspect.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\rthooks' 40282 INFO: Including run-time hook 'pyi_rth_pkgutil.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\rthooks' 40285 INFO: Including run-time hook 'pyi_rth_multiprocessing.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\rthooks' 40287 INFO: Including run-time hook 'pyi_rth__tkinter.py' from 'D:\\python\\py3.13\\Lib\\site-packages\\PyInstaller\\hooks\\rthooks' 40338 INFO: Creating base_library.zip... 40379 INFO: Looking for dynamic libraries 41975 INFO: Extra DLL search directories (AddDllDirectory): ['D:\\python\\py3.13\\Lib\\site-packages\\numpy.libs', 'D:\\python\\py3.13\\Lib\\site-packages\\pandas.libs'] 41975 INFO: Extra DLL search directories (PATH): [] 44927 INFO: Warnings written to F:\789\build\TableToMD\warn-TableToMD.txt 45012 INFO: Graph cross-reference written to F:\789\build\TableToMD\xref-TableToMD.html 45081 INFO: checking PYZ 45082 INFO: Building PYZ because PYZ-00.toc is non existent 45082 INFO: Building PYZ (ZlibArchive) F:\789\build\TableToMD\PYZ-00.pyz 46228 INFO: Building PYZ (ZlibArchive) F:\789\build\TableToMD\PYZ-00.pyz completed successfully. 46332 INFO: checking PKG 46332 INFO: Building PKG because PKG-00.toc is non existent 46333 INFO: Building PKG (CArchive) TableToMD.pkg 56140 INFO: Building PKG (CArchive) TableToMD.pkg completed successfully. 56162 INFO: Bootloader D:\python\py3.13\Lib\site-packages\PyInstaller\bootloader\Windows-64bit-intel\run.exe 56162 INFO: checking EXE 56163 INFO: Building EXE because EXE-00.toc is non existent 56163 INFO: Building EXE from EXE-00.toc 56163 INFO: Copying bootloader EXE to F:\789\dist\TableToMD.exe 56203 INFO: Copying icon to EXE 56210 INFO: Copying 0 resources to EXE 56210 INFO: Embedding manifest in EXE 56217 INFO: Appending PKG archive to EXE 56278 INFO: Fixing EXE headers 56752 INFO: Building EXE from EXE-00.toc completed successfully. 56774 INFO: Build complete! The results are available in: F:\789\dist 构建完成! EXE文件在 dist 目录中 运行 TableToMD.exe 启动程序 为什么启动程序没有应用界面呢?
最新发布
06-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值