日期:2014-05-17  浏览次数:20756 次

一个奇怪的问题,明明相同,为何为FALSE
大家可以复制我一下代码测试
出来的结果怎么会是FALSE 两个字符串明明一样的

 string a = "?{\"rsp\":\"succ\",\"data\":[{\"bn\":\"44725\",\"store\":\"99\"}],\"res\":\"\"}";
            string b = "{\"rsp\":\"succ\",\"data\":[{\"bn\":\"44725\",\"store\":\"99\"}],\"res\":\"\"}";
            if(a==b)
            {
                return true;
            }
            else
            {
                return false;
            }

------解决方案--------------------
 string a = "?{\"rsp\":\"succ\",\"data\":[{\"bn\":\"44725\",\"store\":\"99\"}],\"res\":\"\"}";
            string b = "{\"rsp\":\"succ\",\"data\":[{\"bn\":\"44725\",\"store\":\"99\"}],\"res\":\"\"}";

a的{\"rsp\","与{之间有个?.,复制到vs中就知道了。
------解决方案--------------------
只是看着一样而已,两个的Length都不一样,怎么等
你转成byte[]一比较就知道哪个地方了
------解决方案--------------------
复制到vs中看不出有什么不同。
但是a.Length=61和b.Length=60。
a[0]是一个看不见的字符