Tag: 压缩

借助Mercurial,在推送之前如何“压缩”一系列变更集合?

比方说,我有一个本地和远程Mercurial存储库。 现在,我开始研究一个function。 我工作,当我认为完成时,我提交变更集。 再testing一下,我发现我可以通过在代码中调整一些东西来进一步改进这个function。 我做了改变和承诺。 20分钟后,我发现这个新function存在一个错误,所以我修复了这个错误,并提交了这个错误。 我现在有3个变更集,我真的想推送到远程存储库作为一个变更集,例如消息“实现functionX”。 我怎样才能做到这一点,没有太多的麻烦? 我相信我可以用补丁来做,但是看起来好像很多工作。

Twitter图像编码挑战

如果一张图片的价值是1000字,那么你可以在140个字符中填入多less图片? 注意 :这是人! 赏金截止date在这里,经过一番艰难的考虑后,我决定Boojum的入场只是Sam Hocevar的 。 一旦我有机会写出更详细的笔记,我会发布。 当然,每个人都可以随时继续提交解决scheme,改善人们投票的解决scheme。 感谢提交和录入的每一个人; 我喜欢所有这些。 这对我来说运行起来非常有趣,我希望对于参赛者和观众来说都是有趣的。 我偶然发现了一个有趣的post ,试图将图片压缩成一个Twitter评论,该post中的很多人(以及Reddit上的一个post )都提出了不同的方法。 所以,我认为这将是一个很好的编码挑战; 让人们把他们的钱放在他们的口中,并展示他们的编码思想如何在有限的空间里得到更多的细节。 我挑战你想出一个通用的系统,将图像编码成140个字符的Twitter消息,并将它们再次解码成一个图像。 你可以使用Unicode字符,所以你每个字符超过8位。 但是,即使允许使用Unicode字符,也需要将图像压缩到非常小的空间内。 这肯定是一个有损压缩,所以必须有主观判断每个结果有多好。 以下是原作者Quasimondo从他的编码中得到的结果(图像是根据知识共享署名 – 非商业性许可授权的 ): 你能做得更好吗? 规则 你的程序必须有两种模式: 编码和解码 。 编码时 : 您的程序必须以您select的任何合理的光栅graphics格式inputgraphics。 我们会说ImageMagick支持的任何格式都是合理的。 您的程序必须输出一个可以用140个或更less的Unicode代码点表示的消息; 除了非字符( U+FFFE , U+FFFF , U+ n FFFE , U+ n FFFF ,其中n是10hex数)和范围U+FDD0 – U+FDEF之外的140个代码点在U+0000 – U+10FFFF U+FDEF )和替代码点( U+D800 – […]

在Web应用程序中创build和下载大量ZIP(来自多个BLOB)的最佳实践

我将需要从我的Web应用程序执行大量的文件下载。 很显然,这是一个长期的行动( 每年使用一次(每个客户) ),所以时间不是问题(除非它遇到一些超时,但我可以通过处理创造一些forms的keepalive心跳)。 我知道如何创build一个隐藏的iframe,并使用它的content-disposition: attachment试图下载文件,而不是在浏览器中打开它,以及如何实例客户端 – 服务器通信绘制一个进度计; 下载的实际大小(和文件数量)是未知的,但为了简单起见,我们可以将其视为1GB,由100个文件组成,每个10MB。 由于这应该是一个单击操作,我的第一个想法是在dynamic生成的ZIP中将所有文件从数据库中读取,然后要求用户保存ZIP。 问题是: 在WebApp中创build一个来自多个小字节数组的巨大档案的最佳实践是什么,已知的缺点和陷阱是什么? 这可以随机分成: 应该将每个字节数组转换为物理临时文件,还是可以将它们添加到内存中的ZIP中? 如果是的话,我知道我将不得不处理名称可能的平等(它们可以在数据库中的不同logging中具有相同的名称,但不在相同的文件系统或ZIP中):是否还有其他可能的问题介意(假设文件系统总是有足够的物理空间)? 因为我不能依靠有足够的内存来执行整个内存的操作,所以我猜测ZIP应该被创build并送到文件系统,然后再发送给用户。 有什么办法可以做不同的事情(例如,用websocket ),就像询问用户在哪里保存文件,然后开始从服务器到客户端的数据stream(我猜)。 任何其他相关的已知问题或最好的做法,你会不胜感激。

我怎样才能在IIS7工作中获得gzip压缩?

我已经为IIS7安装了静态和dynamic压缩,并在我的应用程序Virtual Folder级别设置了两个web.config值。 据我了解,我不需要在服务器或站点级别启用压缩,我可以使用我的web.config文件在每个文件夹的基础上进行pipe理。 我在我的.config文件中有两个设置,我已经设置为我的应用程序自定义gzip: <httpCompression dynamicCompressionDisableCpuUsage="90" dynamicCompressionEnableCpuUsage="0"> <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" /> <dynamicTypes> <remove mimeType="*/*"/> <add mimeType="*/*" enabled="true" /> </dynamicTypes> </httpCompression> <urlCompression doDynamicCompression="true" dynamicCompressionBeforeCache="true" /> 但是,当我运行应用程序时,我可以清楚地看到gzip没有被使用,因为我的页面大小是一样的。 我也使用YSlow的FireFox,这也确认我的网页不被gziped。 我在这里错过了什么? 在IIS6中,指定文件types是简单的事情,并且在0-10之间设置压缩级别。 我没有看到需要logging指定文件types或压缩级别,因为默认似乎覆盖文件types,我没有看到任何地方的水平。

C#中的Zip文件夹

什么是如何在C#中压缩文件夹的示例(简单代码)? 更新: 我没有看到命名空间ICSharpCode 。 我下载了ICSharpCode.SharpZipLib.dll但我不知道在哪里复制该DLL文件。 我需要做什么才能看到这个命名空间? 你有链接的MSDN示例压缩文件夹,因为我读了所有的MSDN,但我什么都找不到。 好,但我需要下一个信息。 我应该在哪里复制ICSharpCode.SharpZipLib.dll在Visual Studio中查看该命名空间?

使用System.IO.Compression在内存中创build一个ZIP存档

我试图创build一个ZIP存档与一个简单的演示文本文件使用MemoryStream如下: using (var memoryStream = new MemoryStream()) using (var archive = new ZipArchive(memoryStream , ZipArchiveMode.Create)) { var demoFile = archive.CreateEntry("foo.txt"); using (var entryStream = demoFile.Open()) using (var streamWriter = new StreamWriter(entryStream)) { streamWriter.Write("Bar!"); } using (var fileStream = new FileStream(@"C:\Temp\test.zip", FileMode.Create)) { stream.CopyTo(fileStream); } } 如果我运行这个代码,档案文件本身被创build,但foo.txt不是。 但是,如果我直接用文件streamreplaceMemoryStream ,则会正确创build存档: using (var fileStream = new FileStream(@"C:\Temp\test.zip", FileMode.Create)) […]

Gzip与缩小

前些日子,我讨论了一些比较喜欢使用Gzip的Javascript和CSS的讨论。 我会打电话给这个人 X表示Gzip已经将代码缩小了,因为它能够压缩你的文件。 我不同意。 Zip是一种缩小文件大小的无损方法。 无损意味着原件必须完美地恢复,这意味着必须存储信息以便能够恢复空格,不需要的字符,注释的代码和其他所有内容。 这占用了更多的空间,因为更多必须被压缩。 我没有testing的方法,但我相信这个代码的Gzip: .a1 { background-color:#FFFFFF; padding: 40px 40px 40px 40px; } 仍然会比这个代码的Gzip更大: .a1{body:background-color:#FFF;padding:40px} 有没有人可以certificate这个对或错。 请不要说“这是正确的,因为这是我一直使用的”。 我在这里要求科学certificate。

iPhone解压缩代码

真的停留在尝试编写代码来解压缩iPhone上的文件或目录。 以下是我正在使用的一些示例代码来尝试解压简单的文本文件。 它解压缩文件,但它的腐败。 (void)loadView { NSString *DOCUMENTS_FOLDER = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]; NSString *path = [DOCUMENTS_FOLDER stringByAppendingPathComponent:@"sample.zip"]; NSString *unzipeddest = [DOCUMENTS_FOLDER stringByAppendingPathComponent:@"test.txt"]; gzFile file = gzopen([path UTF8String], "rb"); FILE *dest = fopen([unzipeddest UTF8String], "w"); unsigned char buffer[CHUNK]; int uncompressedLength = gzread(file, buffer, CHUNK); if(fwrite(buffer, 1, uncompressedLength, dest) != uncompressedLength || ferror(dest)) { NSLog(@"error writing data"); } else{ […]

阻止人们通过表单上传恶意PHP文件

我有一个上传表单在我的网站上的PHP创build,人们可以上传一个zip文件。 然后提取zip文件,并将所有文件位置添加到数据库。 上传表单仅供人上传图片,显然这些文件在zip文件夹中,我无法检查文件是否被上传。 我需要一段代码,将删除所有非图像格式(.png,.jpeg等)的文件。 我真的很担心人们能够上传恶意的php文件,很大的安全风险! 我还需要知道人们正在改变PHP文件的扩展名,试图绕过这个安全特性。 这是我使用的原始脚本http://net.tutsplus.com/videos/screencasts/how-to-open-zip-files-with-php/ 这是实际提取.zip文件的代码: function openZip($file_to_open) { global $target; $zip = new ZipArchive(); $x = $zip->open($file_to_open); if($x === true) { $zip->extractTo($target); $zip->close(); unlink($file_to_open); } else { die("There was a problem. Please try again!"); } } 谢谢,本。

最好的JavaScript压缩器

什么是最好的JavaScript压缩机可用? 我正在寻找一个工具: 很容易使用 具有很高的压缩率 产生可靠的最终结果(不会搞乱代码)