有谁知道以下怎么可能?突然字符串比较使用.ToLower
并Lcase
停止工作。
如果我在即时窗口中执行此操作:
?lcase(text)
"menu"
?lcase(text)="menu"
False
这只是几分钟前开始的。我在用着:
- .NET 4.5.2
- Visual Studio 2013 终极版
- 视觉基础
编辑:这个问题的根源来自这里:请我如何从 CryptoStream 返回解码的字节而不是文本
更改该代码后。
有谁知道以下怎么可能?突然字符串比较使用.ToLower
并Lcase
停止工作。
如果我在即时窗口中执行此操作:
?lcase(text)
"menu"
?lcase(text)="menu"
False
这只是几分钟前开始的。我在用着:
编辑:这个问题的根源来自这里:请我如何从 CryptoStream 返回解码的字节而不是文本
更改该代码后。
首先,我会停止使用LCase
,因为它是 VB 6 兼容代码。
其次,我不会在字符串比较中"string".ToLower()
或"string".ToUpper()
在字符串比较中使用 .NET,因为这可能会给某些本地人带来一些意想不到的结果。
更好的使用text.Equals("menu", StringComparison.OrdinalIgnoreCase)
我不知道您的问题的根本原因是什么,但希望对您有所帮助。
'Declaration
Public Shared Function Compare ( _
strA As String, _
strB As String, _
ignoreCase As Boolean _
) As Integer
结果 小于零 = strA 小于 strB。
结果零 = strA 等于 strB。
结果大于零 = strA 大于 strB。