Questions tagged «binaryfiles»

二进制文件是一种计算机文件,可以包含任何类型的数据,以二进制形式编码以用于计算机存储和处理。

12
使用Git管理大型二进制文件
我正在寻找有关如何处理源代码(Web应用程序)所依赖的大型二进制文件的意见。我们目前正在讨论几种替代方法: 手动复制二进制文件。 优点:不确定。 相反:我强烈反对这一点,因为它在建立新站点/迁移旧站点时增加了出错的可能性。建立另一个障碍。 用Git管理它们。 专业版:消除了“忘记”复制重要文件的可能性 相反:膨胀存储库并降低管理代码库的灵活性,而检出,克隆等将花费相当长的时间。 单独的存储库。 优点:签出/克隆源代码比以往任何时候都快,并且图像已正确存储在其自己的存储库中。 相反:消除了在项目上拥有唯一的 Git存储库的简单性。它肯定会引入其他我从未想过的东西。 您对此有何经验/想法? 另外:是否有人在多个Git存储库中进行过管理并在一个项目中进行管理? 这些文件是程序的图像,该程序会在其中生成包含这些文件的PDF。文件不会经常更改(像几年一样),但是它们与程序非常相关。没有文件,该程序将无法运行。

9
NodeJS:将base64编码的图像保存到磁盘
我的Express应用程序正在从浏览器接收base64编码的PNG(使用toDataURL()从canvas生成)并将其写入文件。但是该文件不是有效的图像文件,因此“文件”实用程序只是将其标识为“数据”。 var body = req.rawBody, base64Data = body.replace(/^data:image\/png;base64,/,""), binaryData = new Buffer(base64Data, 'base64').toString('binary'); require("fs").writeFile("out.png", binaryData, "binary", function(err) { console.log(err); // writes out file without error, but it's not a valid image });


19
存储上载的图像,SQL数据库或磁盘文件系统的最佳位置是什么?
我正在编写一个允许用户将图像上传到服务器的应用程序。我希望每天约20张全jpeg图像,并且可能未编辑/调整大小。(这是另一个问题,如何在存储之前在服务器端调整图像大小。也许有人可以在注释中删除.NET资源)。我现在想知道存储上传图像的最佳位置是什么。 将图像作为文件存储在文件系统中,并在具有该图像确切路径的表中创建记录。 或者,使用数据库服务器的“图像”或“二进制数据”数据类型将图像本身存储在表中。 我看到了两者的优点和缺点。我喜欢a),因为我可以轻松地重定位文件,而只需更改表条目。另一方面,我不喜欢将业务数据存储在Web服务器上,并且我真的不希望将Web服务器连接到保存业务数据的任何其他数据源(出于安全原因),我喜欢b),因为所有信息都是在一个地方,并且可以通过查询轻松访问。另一方面,数据库很快就会变得很大。将数据外包可能会更加困难。

2
使用请求在Node.js中获取二进制内容
我尝试使用GET进行二进制数据处理request,结果如下: var requestSettings = { method: 'GET', url: url, }; request(requestSettings, function(error, response, body) { // Use body as a binary Buffer } 但是body总是与预期有几个字节的差异。经过进一步调查,我发现request假定body为字符串,并替换了所有非Unicode字节。 我试图添加 encoding: 'binary' ,requestSettings但没有帮助。 如何获取二进制数据?

1
使用Linux命令将十六进制信息转换为二进制
我的Linux系统上有这个二进制文件... udit@udit-Dabba ~ $ cat file.enc Salted__s�bO��<0�F���Jw!���]�:`C�LKȆ�l 使用hexdump命令,我可以看到如下信息: udit@udit-Dabba ~ $ hexdump -C file.enc 00000000 53 61 6c 74 65 64 5f 5f 1b 73 a1 62 4f 15 be f6 |Salted__.s.bO...| 00000010 3c 30 cc 46 ee 10 13 11 84 bf 4a 77 21 a4 84 99 |<0.F......Jw!...| …

6
递归地区分目录,忽略所有二进制文件
在Fedora Constantine盒子上工作。我正在diff递归地查找两个目录以检查源更改。由于项目的设置(在我自己参与上述项目之前!sigh),目录包含源代码和二进制文件以及大型二进制数据集。虽然差异最终适用于这些目录,但如果我可以忽略二进制文件,则可能需要二十秒钟。 据我了解,DIFF没有一个“忽略二进制文件”模式,但确实有一个忽略的参数,它会忽略正则表达式中的文件。无论扩展名如何,我都不知道该写些什么来忽略二进制文件。 我正在使用以下命令,但它不会忽略二进制文件。有谁知道如何修改此命令来做到这一点? diff -rq dir1 dir2
76 bash  shell  diff  binaryfiles 

17
使用git版本控制系统锁定二进制文件
一年半以来,我一直在关注git社区,希望从SVN转向。使我退缩的一个特殊问题是无法锁定二进制文件。在过去的一年中,我尚未看到有关此问题的进展。我知道锁定文件违反了分布式源代码管理的基本原理,但是当二进制文件存在潜在冲突时,我看不到Web开发公司如何利用git来跟踪源代码和图像文件更改。 为了实现锁定的效果,必须标识“中央”存储库。无论git的分布式性质如何,大多数公司都将为软件项目提供“中央”存储库。我们应该能够将文件标记为需要来自指定地址的git仓库的锁定。也许由于git跟踪文件内容而不是文件而使这变得困难吗? 你们中的任何人都具有处理git和二进制文件的经验,这些文件应在修改前锁定? 注意:看起来Source Gear的新开源分布式版本控制项目Veracity已将锁定作为其目标之一。

4
如何将二进制文件读入无符号字符的向量
最近我一直在问编写一个函数读取二进制文件到std::vector<BYTE>哪里BYTE是unsigned char。我很快就想到了这样的东西: #include <fstream> #include <vector> typedef unsigned char BYTE; std::vector<BYTE> readFile(const char* filename) { // open the file: std::streampos fileSize; std::ifstream file(filename, std::ios::binary); // get its size: file.seekg(0, std::ios::end); fileSize = file.tellg(); file.seekg(0, std::ios::beg); // read the data: std::vector<BYTE> fileData(fileSize); file.read((char*) &fileData[0], fileSize); return fileData; } 这似乎不必要地复杂,并且char*在调用时被迫使用的显式强制转换file.read不会使我对此有所改善。 另一种选择是使用std::istreambuf_iterator: std::vector<BYTE> …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.