0

次のことがどのように可能であるかを知っている人はいますか?と を使用した突然の文字列比較がすべて機能.ToLowerLcaseなくなりました。

イミディエイト ウィンドウでこれを行うと、次のようになります。

?lcase(text)
"menu"
?lcase(text)="menu"
False

これはほんの数分前に始まりました。私は使用しています:

  • .NET 4.5.2
  • Visual Studio 2013 アルティメット
  • ビジュアルベーシック

編集: この問題の原因はここにあります: CryptoStream からテキストの代わりにデコードされたバイトを返すにはどうすればよいですか?

そのコードを変更した後。

4

2 に答える 2

4

まずLCaseVB6互換コードなのでやめておきます。

2 つ目は、一部のローカルで予期しない結果が生じる可能性があるため、.NET ビルドを文字列比較に使用し"string".ToLower()たり、文字列比較に使用したりしないことです。"string".ToUpper()

より良い使用text.Equals("menu", StringComparison.OrdinalIgnoreCase)

あなたの問題の根本的な原因が何であるかはわかりませんが、それが役立つことを願っています.

于 2015-05-25T11:07:59.840 に答える
0

String.Compareを見てください。

'Declaration
Public Shared Function Compare ( _
    strA As String, _
    strB As String, _
    ignoreCase As Boolean _
) As Integer

結果 ゼロ未満 = strA は strB 未満です。
結果ゼロ = strA は strB に等しい。
結果 ゼロより大きい = strA は strB より大きい。

于 2015-05-27T10:29:25.110 に答える