我正在尝试为一段生成大量文本的代码编写单元测试。我遇到了一个问题,其中“预期”和“实际”字符串似乎相等,但 Assert.AreEqual 会抛出异常,并且相等运算符和Equals()
返回假。的结果GetHashCode()
两个值也不同。
然而,将两个字符串放入文本文件并与 DiffMerge 进行比较告诉我它们是相同的。
此外,使用Encoding.ASCII.GetBytes()
对两个值然后使用SequenceEquals
比较结果字节数组返回 true。
每个值都是 34KB,所以我暂时不会将它们放在这里。有任何想法吗?我完全被难住了。
依次通过char
by char
并找出它认为不同的地方?将其写入磁盘并比较 ASCII / 文本的事实告诉我,它可能与回车/换行相关(在保存过程中以某种方式标准化),或者与某些非 ASCII 字符(可能是高位字符)相关。 unicode 空白),保存为 ASCII 时将被删除。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)