4

我有一个从图像转换而来的 base64 字符串(源字符串),我需要一个代码来将该字符串与 Web 服务上的另一个 base64 字符串进行比较,并检查哪个字符串与源字符串最相似,我使用的语言是 C# , 谁能帮我 ???

4

2 回答 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 回答