是否可以使用C#查找和替换字符串中的任何重复字符?我试图减小从jpeg图像转换的base64字符串的大小。我注意到,以base64字符串包含许多重复的字符如:替换字符串中的重复字符
6qdQAUUxJA7uuCGQ8g/wA6fQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFYXiFL5b7TrmwtzM8Xmr7KWUAE +
如果有一种方法,像这样的东西去掉重复字符,将整体小得多:
[QAUUUUAFFFFABRRR,18]
这是格式为[反复字符,NUMBER-OF-TIMES]。
这可能吗?谢谢您的帮助。 :)
当然,但你将不得不改变任何使用BASE64编码的电子邮件客户端代码(我想这是为了那件事)。 – Parallelis
你可以尝试压缩它。字典的开销可能不值得,但这基本上就是它所做的。尽管如果你打算用ASCII传输结果,你可能不得不调整算法来使用字符而不是位。 –
由于JPEG已经在内部压缩,您的压缩策略将不会产生任何结果。看看文件中后面的字节,看看我的意思。 – usr