これは私のログです...
* キャッチされない例外 'NSRangeException' が原因でアプリを終了します。理由: '* -[__NSCFConstantString substringToIndex:]: 範囲またはインデックスが範囲外です'
どうすればいいのかわからない...何が悪いのか誰か助けてくれる?
これは私のログです...
* キャッチされない例外 'NSRangeException' が原因でアプリを終了します。理由: '* -[__NSCFConstantString substringToIndex:]: 範囲またはインデックスが範囲外です'
どうすればいいのかわからない...何が悪いのか誰か助けてくれる?
文字列内の各文字 (例: @"ABCD"
) には、関連付けられたインデックスがあります。私の例では、「A」はインデックス 0、「B」はインデックス 1、「C」はインデックス 2 などになります。
文字列length
(例: NSUInteger stringLength = myStringInstance.length;
) は、文字列内の合計文字数に等しくなります。文字列@"ABCD"
の長さは 4 です。
このステートメントNSString *mySubString = [@"ABCD" substringToIndex:2];
は とmySubString
等しくなり@"AB"
ます。文字列の長さ以上のインデックスにアクセスしようとすることはできません。たとえば、NSString *myOtherSubString = [@"ABCD" substringToIndex:4];
クラッシュします。
お役に立てれば。
これはおそらく他の問題の診断です。
プログラムのどこかでメモリを誤って管理している可能性があります。
これにより、文字列が別の文字列に「置き換えられる」可能性があります。