私はコーディングの経験があまりないことを覚えておいてください...
アレイへのアクセスに問題があります。配列を返す関数を使用して配列を作成しています。例を次に示します。
int[] ArrayName = ReturnArray(string);
ArrayNameが作成されたので、ReturnArrayが返したものと同じである必要がありますか?
さて、私はブレークポイントを右に設定しました:
int[] ArrayName = ReturnArray(string);
ArrayNameが正しく作成されたことがわかります。
次のように、配列の1つの値にアクセスしようとすると次のようになります。
print(ArrayName[0]);
配列の最初の値のみを返す必要がありますか?そうじゃない!複数の値を返し、値はReturnArray(string)が返したものと一致しません
これが「ReturnArray」関数です:
public static int[] ReturnArray(string t)
{
int i,ii,;
string ba;
string base64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
List<int> list = new List<int>();
for (i = 0; i < t.Length;i++)
{
ba = t.Substring(i, 1);
ii = base64.IndexOf(ba) * 64;
list.Add(ii);
}
return list.ToArray();
}
コメントからの応答に行うコードを追加しました
private void outputLoop()
{
int i = 0;
for (i = 0; i < 63; i++)
{
int te = lines[i].Length - 128;
string tes = lines[i].Substring(te, 64);
int[] ArrayName = ReturnArray(tes);
_textlayer.DrawString(_font, ArrayName[i].ToString(), new Vector2(1100, i * 15), Color.White);
}
}