0

我正在尝试使 .txt 文件看起来像 .jpg 文件,以便可以使用 Eye-Fi SD 卡通过 wi-fi 发送它。该卡仅发送 .jpg 文件有几个原因。一个原因是图片从 SD 卡到计算机的传输路径如下所示:

相机将照片写入 EYE-FI SD -> EYE-FI 连接到本地路由器 -> 本地路由器上传到 EYE-FI 服务器 -> EYE-FI 服务器上传到您的计算机。

[解释]

服务器端可能有一些过滤器,所以我找到了一些软件这允许用户绕过 eye-fi 服务器,所以现在我知道我只处理 SD 卡。很高兴知道没有其他人在查看我的文件。经过一些实验,我发现我可以将 .jpg 文件放在卡上,并在拍照后将它们传输。我还发现图片必须以短格式命名;一个不超过 8 个字符的名称(不包括文件扩展名),这可能与卡被格式化为 fat32 的事实有关(卡可以重新格式化并且仍然可以使用)。我尝试将 .txt 文件上传到卡上,并给它一个类似的格式,并将其重命名为 .jpg 文件。它确实传输,这向我表明除了文件扩展名之外可能还有其他东西,它表示文件的格式。

[问题]

1) 有没有办法欺骗 .txt 文件,使它们看起来像 .jpg 文件?

2) 是否有某种程序我可以使用(用于 linux)来处理卡上的值,这样我就可以弄清楚是什么触发了上传?有什么想法可以触发上传吗?

4

1 回答 1

0

1)是的,文件中有十六进制值表明它是.jpg。如果你用十六进制编辑器打开一个 .jpg 文件,你会注意到有一些标题行包含一堆关于图像如何压缩的信息,有时是什么制作了图像,一些固件信息等。在编辑器中,你可以找到字符串“FF D8”,这表示图像文件的开头。紧随其后的是“FF C0”。接下来的 6 个字节包含有关图像大小的信息,并且(我猜)被任何显示图像的软件使用。jpg 文件的结尾由 2 个字节“FF D9”表示。有趣的是,我玩弄了我正在使用的 jpg 文件,似乎您可以在“FF D9”之后放置文本,并且仍然可以运行 jpg。我认为这很整洁。资源

不过,这些都不需要让 eye-fi 上传文件。正如我在我的问题中所说,卡需要文件的名称是短格式(这意味着标题不能超过 8 个字符)并且需要具有可接受的文件扩展名,在我的情况下,我使用了“.jpg” . 我写了一个文本文件,并将其保存为“text.jpg”。我发现传输文件需要最小大小,这很奇怪。

我为此选择的十六进制编辑器很幸运,它对打开文件很有用,但我还没有弄清楚它是否可以打开卷。好像不能。

于 2012-07-31T18:22:02.147 回答