0

これは私の最後の質問の続きです。

比較しようとしている文字列は次のようになります。

Discovered Peripherial: <CBPeripheral: 0x39b8b50 identifier = DEEE65FB-FF1F-A6A9-4C3C-5784F41B0D39, Name = "rawr", state = connecting>

私がやろうとしているのは、プログラムに保存している識別子番号を確認することです。そのために、次のことを行いました。

private void AppendString(string message) 
{
    message.Substring(message.Length-77, message.Length);
    outputContent.text += "\n" + message;
}

\n がそこにあるのは、6 つの異なるデバイスで読み込んでいて、それらすべてが上記の行を生成するためです。そのため、読みやすくするための何かが必要でした。

次に、更新機能で、次のように類似しているかどうかを確認しています。

if(String.Equals(myValues["UUID"], outputContent.text, StringComparison.OrdinalIgnoreCase))
{
    Instantiate(model1, new Vector3(-2.5f, 3.0f,0), Quaternion.identity);
}

ただし、これを iPad で実行すると、xCode は次のメッセージを生成します。

ArgumentOutOfRangeException: startIndex + length > this.length
Parameter name: length

私が推測しているのは、部分文字列でカウントバックする必要がある文字数を誤ってカウントしたことを意味します。

私の質問はこれです:

保存された値を非常に長い文字列の特定の部分の値と比較できるより良い方法はありますか、またはそのエラーを生成しているコードで愚かなことをしましたか?

これは、私が iPad に構築している Unity プロジェクトであり、Mac では複製できないいくつかの機能を利用しています。

4

1 に答える 1