c# - 是否有快速且普通的 C# 代码/算法来将逗号分隔的数字字符串压缩到接近最大信息密度?

标签 c# algorithm compression adhoc

简而言之,我通过创建执行行 ID 连接的 CLR 聚合将自己编程到了一个角落,所以我说:

select SumKeys(id), name from SomeTable where name='multiple rows named this'

我得到类似的东西:

SumKeys         name
--------        ---------
1,4,495         multiple rows named this

但是当 SumKeys 超过 8000 个字符时它就会消失,我认为我对此无能为力。

作为一个快速修复(对于我的应用程序来说,只有 1% 的失败率),我想我可以压缩字符串,并且我想你们中的一些聪明人可能知道一种巧妙的方法来做到这一点。

类似于 0-9 和逗号的 base64 之类的东西?

最佳答案

如果你找到更合理的数据存储方式(也许是 HashSet),效果会更好......

但对于压缩,请尝试常规 System.IO.Compression.GZipStream ( http://msdn.microsoft.com/en-us/library/system.io.compression.gzipstream.aspx ) 并根据需要将结果字节数组转换为 base64 字符串...或存储为字节数组。

关于c# - 是否有快速且普通的 C# 代码/算法来将逗号分隔的数字字符串压缩到接近最大信息密度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6023117/

相关文章:

c# - TabPage 作为用户控件?

c# - 通过将状态存储到作用域局部变量中来避免关闭快速路径

algorithm - 查找所有 1's in a matrix having 1' 和 0 的最大尺寸子矩阵

algorithm - 计算日期时间轴最小、最大和主要次要刻度间隔

linux - 在 Linux 命令行上使用 lzma2 压缩和压缩多个文件的具体命令是什么?

powershell - 从 Get-childitem 中排除一个文件夹和一个文件类型

c# - 防篡改表

c# - 我能否以编程方式捕获 Silverlight 用户控件的快照?

java - 涉及方法未定义类型的复杂问题

iPhone、JSon 和压缩