2d Array from text file c# [closed]

本秂侑毒 提交于 2019-11-28 08:51:15
String input = File.ReadAllText( @"c:\myfile.txt" );

int i = 0, j = 0;
int[,] result = new int[10, 10];
foreach (var row in input.Split('\n'))
{
    j = 0;
    foreach (var col in row.Trim().Split(' '))
    {
        result[i, j] = int.Parse(col.Trim());
        j++;
    }
    i++;
}

The indices will be 0-based so if you want to access 10th column in fourth row:

Console.WriteLine(result[3,9]); //40
L.B

A jagged array?

int[][] list = File.ReadAllLines("a.txt")
                   .Select(l => l.Split(' ').Select(i => int.Parse(i)).ToArray())
                   .ToArray();

EDIT

You can use JaggedToMultidimensional here

int[,] list2 = JaggedToMultidimensional(list);

Perhaps:

var result = File.ReadLines(path)
    .SelectMany((l, i) => l.Split()
                           .Select(s => new int[] { i, int.Parse(s) })
                           .ToArray())
    .ToArray();

Edit: Although this is a jagged array int[][].

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!