压缩小字符串

我有数据字符串340字节,主要由符号和数字组成,如“føàA¹º@ƒUë5§Ž§” 我想压缩到250或更少的字节,以将其保存在我的RFID卡上。 由于此数据与指纹温度有关。我想要无损压缩。 那么我可以在C#中实现任何算法来压缩它吗?     
已邀请:
如果数据是严格的数字和符号,我强烈建议将数字更改为基于int的值。例如: + 12939272-23923 + 927392 可以压缩成3个32位整数,即22个字节=> 16个字节。选择正确的整数大小(无论是32位,24位,16位)应该有所帮助。 如果整数大小变化很大,您可以使用8位开始并使用值255来指定下一个8位成为整数的8个更高有效位,使其成为15位。 或者,您可以识别最重要的字符并为其指定0。第二个最重要的角色获得10,第三个110.这是一个非常粗略的压缩,但如果你的数据非常有限,这可能只是为你做的工作。     
你知道关于你的字符串的其他信息吗?例如,它是否比其他人更频繁地包含某些字符?它是包含所有255个字符还是只包含其中的一部分? 如果是这样,霍夫曼编码可能会对您有所帮助,请参阅此链接或其他链接以了解C#中的实现。 说实话,这取决于输入字符串的外观。我要做的是尝试使用rar,zip,7zip(LZMA)以及非常小的字典大小(否则它们只会占用太多空间用于预处理信息)并查看它们生成的原始压缩文件有多大(将可能必须使用他们的库,以使它们剥离标题以节省空间)。如果它们中的任何一个产生250b以下的文件,那么找到它的c#库就可以了。     

要回复问题请先登录注册