我有一个从图像转换而来的 base64 字符串(源字符串),我需要一个代码来将该字符串与 Web 服务上的另一个 base64 字符串进行比较,并检查哪个字符串与源字符串最相似,我使用的语言是 C# , 谁能帮我 ???
问问题
6418 次
2 回答
3
您可以轻松地比较字符串,还可以通过在每一端使用 MD5 校验和来节省一些带宽。
找到“最相似之处”取决于您的算法实现。只有你知道“最相似”是什么意思。
于 2013-01-09T17:27:04.887 回答
-1
如果您正在寻找不同的总位数,您可以使用以下内容:
private long Base64BitsDifferent(string first64, string second64)
{
long toReturn = 0;
byte[] firstBytes = Convert.FromBase64String(first64);
byte[] secondBytes = Convert.FromBase64String(second64);
byte different = 0;
for (int index = 0; index < firstBytes.Length; index++) {
different = (firstBytes[index] ^ secondBytes[index]);
while (different != 0) {
toReturn++;
different &= different - 1;
}
}
return toReturn;
}
假设两个 Base64 字符串中表示的字节数相等。
于 2013-06-13T19:14:04.483 回答