标签: compression

EXE竞争(针对.NET应用程序)算法在二进制代码中显示具有真实人名的奇怪字符

刚打开刚才编译的.net应用程序并在文件的二进制结构中找到了下一个:

在此输入图像描述

我刚刚使用我的HTTP解析器工具,我正在使用子串搜索算法进行训练,并在不同的地方找到了一些人类"Ivan Medvedev"的真实姓名.

它是什么?

.net compression algorithm exe runtime

0
推荐指数
1
解决办法
197
查看次数

Python zlib没有压缩字符串?

我现在正在浏览python.org的python教程.我在10.9,我正在尝试使用zlib库来压缩字符串.但是,len(compressedString)并不总是小于len(originalString).我的翻译代码如下:

>>> import zlib
>>> s = 'the quick brown fox jumps over the lazy dog'
>>> len(s)
43
>>> t = zlib.compress(s)
>>> len(t)
50
>>> t
'x\x9c+\xc9HU(,\xcdL\xceVH*\xca/\xcfSH\xcb\xafP\xc8*\xcd-(V\xc8/K-R(\x01J\xe7$VU*\xa4\xe4\xa7\x03\x00a<\x0f\xfa'
>>> len(zlib.decompress(t))
43
>>> s2 = "something else i'm compressing"
>>> len(s2)
30
>>> t2 = zlib.compress(s2)
>>> len(t2)
37
>>> s3 = "witch which has which witches wrist watch"
>>> len(s3)
41
>>> t3 = zlib.compress(s3)
>>> len(t3)
37
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么会这样?

python compression zlib

0
推荐指数
1
解决办法
5151
查看次数

如果我将文件的内容转换为单个大数字并将其表达为数学表达式,是否意味着我已压缩文件?

假设数学表达式的字符数少于原始数字.例-

20880467999847912034355032910578可表示为(23 ^ 23 +10)

这看起来像一个很好的压缩方法.它可以用于压缩大文件吗?

更新 - 我并不是说将文件转换为大二进制数.假设我有一个文本文件,我用它们的ascii值替换它中的所有字符.现在我在十进制数字系统中有一个大数字.我可以将它表达为一个数学表达式,如上例所示.

compression algorithm math

0
推荐指数
2
解决办法
271
查看次数

DotNetZip - 添加文件夹

我想这很简单,但我在DotNetZip示例或文档中找不到任何帮助.我需要将文件夹添加到包含文件夹和文件的zip文件中,我需要维护文件夹而不是仅压缩文件,但使用以下文件总是剥离文件夹:

 using (ZipFile zip = new ZipFile())
                {
                    string[] files = Directory.GetFiles(@TempLoc);
                    string[] folders = Directory.GetDirectories(@TempLoc);
                    zip.AddFiles(files, "Traces");

                    foreach (string fol in folders)
                    {
                        zip.AddDirectory(fol, "Traces");
                    }

                    zip.Comment = "These traces were gathered " + System.DateTime.Now.ToString("G");
                    zip.Save(arcTraceLoc + userName.Text + "-Logs.zip");
                }
Run Code Online (Sandbox Code Playgroud)

我正在使用循环,因为我找不到类似于DotNetZip中的'AddFiles'的文件夹的功能.

谢谢.

c# compression dotnetzip

0
推荐指数
1
解决办法
3515
查看次数

估计压缩的数据大小

例如,我有一些文件夹包含我要压缩的文件,但我想在创建之前估计存档的大小.如果需要算法可以使用预定义大小订单的临时文件小于文件夹大小.

谁能建议这样的算法或现有的压缩程序?

compression algorithm zip file

0
推荐指数
1
解决办法
2556
查看次数

为什么不在APK文件中压缩resources.arsc?

我想减少我的apk文件大小.所以,我试图压缩MyApp.apk文件中的resoruces.arsc文件.因为该文件是APK文件中最可缩减的文件.我测试了几个apk文件(包括其他应用程序),但它工作得很好.应用程序执行时的性能也没有什么不同.还有其他问题/原因吗?为什么该文件不压缩?

compression android

0
推荐指数
1
解决办法
2111
查看次数

使用zipfile模块在python中创建压缩的zip文件

我是python的新手.我的要求是将所有文件从源目录压缩(压缩)到目标目录.我使用了stackOverFlow中的以下代码.

import zipfile, os
locfile = "D:\Python\Dir_dir\Dir_dir\ABC.txt"
loczip = "D:\Python\Dir_dir\Dir_dir2\ABC_TEST.zip"
zip = zipfile.ZipFile (loczip, "w")
zip.write (locfile)
zip.close()
Run Code Online (Sandbox Code Playgroud)

它正在创建一个zip文件,但它包含整个继承的目录结构.除了驱动器(D:/),结构的其余部分被添加到zip中.它看起来如下:"D:\ Python\Dir_dir\Dir_dir2\ABC_TEST.zip\Python\Dir_dir\Dir_dir\ABC.txt"

而我想:"D:\ Python\Dir_dir\Dir_dir2\ABC_TEST.zip\ABC.txt"

它也没有压缩.

请有人分享这个问题的解决方案.

谢谢,Subrat

python compression zip

0
推荐指数
1
解决办法
9659
查看次数

使用GZipStream将文本文件写入gz文件,而无需先将文本文件写入磁盘

我目前正在从几个数据库查询中生成大量输出.生成的XML文件大约为2GB.(这是一年的数据).为了节省一些磁盘空间和客户端的下载时间,我使用GZipStream类将此文件添加到压缩文件中.请参阅下文,了解我目前如何将文件压缩为gz.注意:fi对象是FileInfo.

using (FileStream inFile = fi.OpenRead())
using (FileStream outFile = File.Create(fi.FullName + ".gz"))
using (GZipStream Compress = new GZipStream(outFile, CompressionMode.Compress))
{
    byte[] buffer = new byte[65536];
    int numRead;
    while ((numRead = inFile.Read(buffer, 0, buffer.Length)) != 0)
    {
        Compress.Write(buffer, 0, numRead);
    }
}
Run Code Online (Sandbox Code Playgroud)

这种方法工作正常,但要求我将2GB文本文件写入磁盘,然后再将其全部读回来,以便将其添加到GZipStream中,然后将其作为压缩文件再次写回.这似乎是浪费时间.

有没有办法直接将我的2GB字符串添加到GZipStream而无需先写入磁盘?

c# compression stream gzipstream

0
推荐指数
1
解决办法
2687
查看次数

与压缩相比,为什么提取需要不同的zlib窗口位值?

我试图用一些使用zlib1.2.8的代码调试问题.问题是这个较大的项目可以创建存档,但Z_DATA_ERROR在尝试提取该存档时会遇到标题问题.

为此,我用C++编写了一个小型测试程序,压缩("缩小")指定的常规文件,将压缩数据写入第二个常规文件,并提取("膨胀")到第三个常规文件,一行为一时间 我然后diff第一个和第三个文件,以确保我得到相同的字节.

作为参考,该测试项目位于:https://github.com/alexpreynolds/zlib-test并在Clang下编译(也应该在GNU GCC下编译).

我更大的问题是如何在我的大项目中正确处理标题数据.

在我的第一个测试场景中,我可以使用以下代码设置压缩机械:

z_error = deflateInit(this->z_stream_ptr, ZLIB_TEST_COMPRESSION_LEVEL);
Run Code Online (Sandbox Code Playgroud)

在这里,ZLIB_TEST_COMPRESSION_LEVEL1为了提供最佳速度.然后我deflate()z_stream指针上运行,直到没有任何东西从压缩中消失.

要提取这些字节,我可以使用inflateInit():

int ret = inflateInit(this->z_stream_ptr);
Run Code Online (Sandbox Code Playgroud)

那么在这种情况下标题格式是什么?

在我的第二个测试场景中,我设置了deflate机器,如下所示:

z_error = deflateInit2(this->z_stream_ptr, 
                       ZLIB_TEST_COMPRESSION_LEVEL, 
                       ZLIB_TEST_COMPRESSION_METHOD, 
                       ZLIB_TEST_COMPRESSION_WINDOW_BITS,
                       ZLIB_TEST_COMPRESSION_MEM_LEVEL,
                       ZLIB_TEST_COMPRESSION_STRATEGY);
Run Code Online (Sandbox Code Playgroud)

这些放气常数分别是,1对于电平,Z_DEFLATED为方法,15+1631对窗口位,8用于存储器级,并Z_DEFAULT_STRATEGY为策略.

inflateInit()呼叫不起作用; 相反,我必须使用inflateInit2()并指定一个修改的窗口位值:

int ret = inflateInit2(this->z_stream_ptr, ZLIB_TEST_COMPRESSION_WINDOW_BITS + 16);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,窗口位值不是31deflateInit2()调用中,而是15+32或 …

c c++ compression zlib

0
推荐指数
1
解决办法
2828
查看次数

最快的解压缩算法?


我听说Google snappy是一个快速解压缩库.
Snappy库使用什么作为算法?
是否有一些算法在解压缩方面更快?
压缩率和编码不是我的兴趣,但实时解压缩是我感兴趣的.
非常感谢你提前!

compression snappy

0
推荐指数
1
解决办法
2222
查看次数

标签 统计

compression ×10

algorithm ×3

c# ×2

python ×2

zip ×2

zlib ×2

.net ×1

android ×1

c ×1

c++ ×1

dotnetzip ×1

exe ×1

file ×1

gzipstream ×1

math ×1

runtime ×1

snappy ×1

stream ×1