Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/jquery-mobile/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File io 在emacs lisp中访问超出最正fixnum的字节_File Io_Elisp_Filesize_Emacs24 - Fatal编程技术网

File io 在emacs lisp中访问超出最正fixnum的字节

File io 在emacs lisp中访问超出最正fixnum的字节,file-io,elisp,filesize,emacs24,File Io,Elisp,Filesize,Emacs24,TL;DR:32位emacs lisp字节范围能否超过文件的前512MB 我喜欢将emacs lisp用于各种数据处理任务,因为它(显然)与编辑器的集成度很高 在编写自定义函数时,我有时会遇到most-positive-fixnum施加的限制。虽然我可以接受并理解无法将整个1GB文件加载到缓冲区的原因,但插入文件内容[-字面上]接口也不允许访问文件前512MB以外的数据块,因为它需要一个整数字节范围作为参数 有没有办法绕过这个限制?据我所知,目前,insert file contents是ema

TL;DR:32位emacs lisp字节范围能否超过文件的前512MB

我喜欢将emacs lisp用于各种数据处理任务,因为它(显然)与编辑器的集成度很高

在编写自定义函数时,我有时会遇到
most-positive-fixnum
施加的限制。虽然我可以接受并理解无法将整个1GB文件加载到缓冲区的原因,但
插入文件内容[-字面上]
接口也不允许访问文件前512MB以外的数据块,因为它需要一个整数字节范围作为参数

有没有办法绕过这个限制?据我所知,目前,
insert file contents
是emacs lisp可用的最低级的文件读取功能,
insert file contents实际上是通过设置两个变量配置的第一个变量的变体,即emacs lisp似乎不提供任何低级的
fopen
类型文件接口


奇怪的是,在某些情况下(可能使用自编二进制),使用浮点参数调用
按字面意思插入文件内容
,允许访问高字节范围,但代价是舍入错误。但是,使用ftp.gnu.org上的最新预编译emacs版本(编写时为24.3)会产生
(错误的类型参数文件偏移量)
错误

仅在Emacs中无法做到这一点。你必须以某种方式使用一些外部程序。这是一个已知的限制,我相信它已经存在于bug跟踪器中。

似乎您必须使用外部命令,如
head
tail
,请参阅。在这种情况下,您可以随意处理
emacs calc
任意精度的数字;我主要在Windows上使用emacs。