问题标签 [text-compression]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
318 浏览

c# - 压缩HTML源代码,保存在数据库和取回的最有效方法

我正在编写一个爬虫 atm,并将已爬取的页面源数据保存在数据库中作为 nvarchar(max)

你可以猜到这会占用巨大的空间,所以我相信在 C# 中压缩 HTML 源代码对我来说会更好——然后将它保存在数据库中,然后在取回时解压缩它

我怎样才能以最有效的方式做到这一点?

我检查了一下,似乎没有办法在 sql server 上实现这一点

Ty 非常希望得到答案。

c#.net 4.5 wpf

sql server 2014

0 投票
1 回答
2591 浏览

c# - 如何使用 SevenZip - 7Zip 压缩/解压缩字符串

文档太差了,所以我很难做到这一点

我添加了 dll 文件和正确的引用

最后它压缩了字符串,但是当我解压缩时出错

你能告诉我错误在哪里吗?

下面解压

我在这里收到错误消息

c# .net 4.5 WPF ,

包\SevenZipSharp.0.64\lib\SevenZipSharp.dll

在此处输入图像描述

0 投票
1 回答
797 浏览

algorithm - qrcode的最佳压缩和解压缩算法

场景:必须生成包含一些客户信息的二维码。它将在安卓手机中被扫描。

信息必须在以下过程中传输。

一切顺利。但是文本压缩效率不高。

有什么有效的方法可以做到这一点吗?

0 投票
2 回答
1002 浏览

dictionary - 文本上的 LZW 压缩

如何改进 LZW 输出序列以实现更高的压缩率?有没有具体的方法?(我正在对文本文件应用 LZW 压缩)

0 投票
1 回答
102 浏览

c# - 在最小字节数组中对共享给定(非标准)字符集上的给定字符串进行编码/解码

我正在寻找一种通用算法,该算法在定义的字符集上对给定字符串进行编码/解码,该字符设置为/从字节数组中。它必须使用最小的空间。

我开始开发我的,这是一种从 Base'n' 到 Base 2 的算法,但我认为这样的东西一定已经开发出来了。

我需要使用已知的受限字符集以最小位数编码字符串。也许我应该使用 bzip2?

编辑:我的字符串长度最大为 160 个字符。如果需要,我可以填充它们。

Edit2:我必须知道最坏情况的位数。

byte[] encode(string charset, string value)

string decode(string charset, byte[] encodedValue)

用法:

0 投票
1 回答
345 浏览

algorithm - 规范霍夫曼编码器:编码比特流的内容

假设我们有以下规范的霍夫曼代码表。

现在,我们从输入文件中读取符号并通过查看上表对其进行编码。然而,许多资源说,在规范霍夫曼的情况下,我们不应该发送代码字。相反,每个符号的代码长度就足够了。

如果文本文件包含 ACCDB,我应该将 00 01 10 11 还是 10 10 10 10(对应代码长度的二进制等效项)作为编码比特流传输?如果我错了,请纠正我,我很感激任何解释。

此外,如果规范霍夫曼是这种情况,我们将如何解码该比特流以取回原始符号 ACCDB(在解码器中不使用霍夫曼树)?

0 投票
1 回答
44 浏览

logging - 具有预分配内存的日志模块

我正在编写一个日志记录机制,其余代码将使用该机制将字母数字数据记录到文件中。系统中的每个其他模块都将发送字母数字句子(最多几个单词)以连续写入文件。问题是,我只获得了少量的预分配内存,用于我的数据结构和这些日志消息的内存存储。如果流入量超过可以写入磁盘的量,则日志消息将被丢弃。

我想在我的日志模块中在客户端和内存存储之间放置一个压缩机制,这样我就可以保存尽可能多的消息。

到目前为止我目前的设计:

CLIENT ------> LOG MODULE ---->压缩并存储在内存缓冲区 1 中

写入线程:写入时,将缓冲区 1 与缓冲区 2 切换,并将缓冲区 1 写入文件。在此期间,客户端将写入缓冲区 2。

外部脚本解压缩并显示日志消息

问题:我可以使用什么好的字母数字压缩算法或可以用来捕获尽可能多的数据的好的数据结构(在上面的压缩阶段)?

如果可能的话,我想要一个不将压缩代码存储在中间数据结构中的算法——即,如果系统崩溃,我希望能够解压缩到目前为止已写入文件的任何内容。

到目前为止的尝试:为我们将使用的每个字符分配一个代码。似乎没有那么灵活。

大多数日志消息都是简单的文本句子

0 投票
0 回答
340 浏览

assembly - 文本压缩 - 汇编语言

我的任务基本上是压缩文件,在汇编中压缩数据(只是字母,没有空格)。到目前为止我所做的: *从txt文件中接收所有数据 *按以下顺序将其放入数组中:频率最高的字母在前,以此类推。*将每个字母的出现频率按照与之前相同的顺序排列。例如: abc 25 3 1 我全部写在emu8086 EXE模板中。如果有人感兴趣,我可以链接代码,但我认为这无关紧要。

现在我必须以某种方式压缩它。我想到了使用 Jose 在这里建议的技术:Steps to compress a file using Huffman Code但是如果我快速浏览一下,我可以很快理解它不会压缩文件,但实际上恰恰相反。

当我们谈论编程,特别是汇编语言的技能时,创建一个霍夫曼树很可能“不合我意”。以比 ASCII 更有效的方式压缩数据的任何想法(8 * 字母数,假设为 abcdefghijklmnoqrstuvwxyz = 208 位)。

太感谢了!!:)

0 投票
1 回答
241 浏览

xml - 压缩包含 base64 数据的 XML

我有一个包含长 base64 字符串数据的 XML 文件。XML 的大小大约为 6KB,我想将 XML 的大小减小到大约 1.5 到 2KB。我正在寻找的文本压缩应该是无损的。我尝试使用很多库,如 GZIP、bzip2 和 deflate 进行压缩。是否可以采取其他途径来获得更好的结果

0 投票
1 回答
286 浏览

javascript - 在 JavaScript 中压缩数据并将其发送到 Flask Server

所以我的团队制作了一个小工具来执行图像注释和标签。我们正在尝试优化我们的代码。我们能够压缩来自服务器的数据,但我们一直在尝试对从客户端发送到服务器的数据执行压缩。您可能会问什么数据,它只是大约 2 - 3mb 的文本文件。有什么方法可以进行压缩吗?我们正在使用 JavaScirpt 并希望发送到 FLASK。

这是我在这里发布的第一个问题:)