0

2 つの変数がありますが、値は同じです。1 つはデータベースから取得される文字列で、もう 1 つはプログラムで生成されます。例えば ​​:

 String encodedImage="FFD8FFFE002460000D11000000000000000000000000000000F0004001230032"
+"120B510451040000FFDB008400090607080705090807080A09090A0D160E0D0C"; 

//これはプログラムで生成された変数です

String vartable="FFD8FFFE002460000D11000000000000000000000000000000F0004001230032\r\n120B510451040000FFDB008400090607080705090807080A09090A0D160E0D0C

// これはデータベースから取得された文字列です。これは json であり、文字列に解析されます

文字列は画像を表すため、かなり長くなりますが、最初の 2 行を次に示します。問題は、2つの文字列を比較すると

if( encodedImage.equalsIgnoreCase(vartable)

2 つの文字列が一致しないことがわかりました。私はAndroidアプリケーションを実行していますが、同じ画像を表示するには同じ文字列が必要です

4

2 に答える 2

1

\r\nstring( ) の 1 つにシーケンスがありますvartable。したがって、2 つの文字列は等しくありません。一方の文字列は 2 文字以上です。これは、デバッグによって簡単に検出できます。2 つの文字列の長さが同じではなく、これはおそらくequalsおよびそのバリエーションが実行する最初のチェックの 1 つです。

于 2013-09-24T09:19:46.273 に答える