日期:2014-05-17  浏览次数:21128 次

C# 一个二维数组读取截取字符串的问题
Regex.Split(字符串集合, 逗号, System.Text.RegularExpressions.RegexOptions.IgnoreCase)

字符串集合如下
1,2
11,22
111,222

现在我想用一个二维数组 int[] aa=new int[3,3];
用for循环 把数据装入 如aa[0,0]=1;aa[1,1]=22;这样如何实现呢

private int[,] result()
{
   方法如何实现?,一维数组实现了 二维的想不出来
c# 二维数组 截取字符串

------解决方案--------------------

            string str = @"1,2
11,22
111,222";
            var ary = str.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries).Select(t => t.Split(',').Select(tt => Convert.ToInt32(tt.Trim())).ToArray()).ToArray();
         
------解决方案--------------------
本帖最后由 caozhy 于 2013-01-15 11:34:28 编辑
手写的
int[,] stringtoarray(string s)
{
    string[] lines = s.Split(new string[] { "\r\n" }, StringSplitOptions.None);
    int x = lines.Count();
    int y = lines[0].Split(',').Count();
    int[,] result = new string[x, y];
    for (int i = 0; i < x; i++)
    {
        string[] rows = lines[i].Split(',');
        for (int j = 0; j < y; j++)
            result[i, j] = int.Parse(rows[j]);
    }
    return result;
}