为什么会想到把一个二维数组转成字符串呢?哎,说来话长,简单来说就是我在保存游戏的时候,用的那个不支持多维数组,而且我也不知道一共会有多少个二维数组,所以我就想着干脆转换成一个长长的字符串算了,不知道这样会消耗多少性能。。。但是也管不了了,先实现功能再说读取游戏的时候还要把字符串转换成二维数组。。。
/// <summary>
/// 将一个二维数组转化为一个string/// </summary>
/// <param name="list"></param>
/// <returns></returns>
public static string ConvertString(int[][] list)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.Length; i++)
{
for (int j = 0; j < list[i].Length; j++)
{
sb.Append(list[i][j]);
}
}
return sb.ToString();
}
/// <summary>
/// 将一个string转化为一个二维数组
/// </summary>
/// <param name="sb"></param>
/// <returns></returns>
public static int[][] ConvertTwoDimensional(string sb)
{
int xx = 13;//我这个数组的大小是固定的13*13
int yy = 13;
int[][] two = new int[xx][];
for (int i = 0; i < xx; i++)
{
two[i] = new int[yy];
for (int j = 0; j < yy; j++)
{
two[i][j] = int.Parse(sb.Substring(((j* xx) + i) *3, 3));
}
}
return two;
}