gpt4 book ai didi

csv - 检测 .csv 文件是否实际上是 .xls (Excel) 文件

转载 作者:行者123 更新时间:2023-12-04 21:20:46 33 4
gpt4 key购买 nike

我想检测用户是否不小心上传了标记为 .csv 的 Excel 文件。是否有 xls 文件的标准二进制足迹可以使这成为可能?

最佳答案

你可以在python中读取excel文件:

http://scienceoss.com/read-excel-files-from-python/

你可以在 Perl 中读取 excel 文件:

http://www.thegeekstuff.com/2011/12/perl-and-excel/

How can I read Excel files in Perl?

Unix/Linux 实用程序 file可以识别excel和大量其他文件。

示例输出:
file ~/Download/*xls

/home/paul/Downloads/REDACTED1.xls:          Composite Document File V2 Document, Little Endian, Os: Windows, Version 5.1, Code page: 1252, Author: Someones Name, Last Saved By: Somebody Else, Name of Creating Application: Microsoft Excel, Create Time/Date: Wed Jan 27 00:39:46 2010, Last Saved Time/Date: Sun Feb 28 13:55:47 2010, Security: 0

/home/paul/Downloads/REDACTED2.xls: Composite Document File V2 Document, Little Endian, Os: Windows, Version 1.0, Code page: -535, Author: Paul , Last Saved By: Paul , Revision Number: 3, Total Editing Time: 18:09, Create Time/Date: Wed Oct 26 23:45:51 2011, Last Saved Time/Date: Thu Oct 27 00:34:42 2011

您可以简单地构建一个调用 file 的库。并返回结果。

看如何 file这样做,源代码可用,还有 file实用程序有自己的配置文件,甚至还有一个包含幻字节和字符串信息的配置目录。
apt-get source file
./file-5.11/magic/MagDir 是一个充满魔法字节和字符串的目录,可以在各种格式中查找,但是在我自己的 excel 文件的扫描中看到的“复合文档文件”并没有在那里声明。这个目录确实有 Mac 上的 Excel、Word 和一些旧的 msdos 格式的定义文件。
cd ./file-5.11; grep 'Composite Document File' */*
产量:
src/cdf.c: * Parse Composite Document Files, the format used in Microsoft Office
src/cdf.c: * N.B. This is the "Composite Document File" format, and not the
src/cdf.h: * Parse Composite Document Files, the format used in Microsoft Office
src/cdf.h: * N.B. This is the "Composite Document File" format, and not the
src/readcdf.c: if (file_printf(ms, "Composite Document File V2 Document")
src/readcdf.c: if (file_printf(ms, "Composite Document File V2 Document")

我建议您可以调查以确定 file实用程序能够检测某些 Microsoft Excel 格式。

关于csv - 检测 .csv 文件是否实际上是 .xls (Excel) 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12146350/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com