[英]Making a mulitdimensional jagged array
我想制作一個動態數組的動態數組,我該怎么做? 我已經嘗試過使用AddRange()
方法的列表列表。 我也嘗試遍歷數組。
也許更有意義地表明我正在做的事情。 我無法使其正常工作:
String[] lines = System.IO.File.ReadAllLines(fileName);
String[] linesArr;
String[][] MultiArr;
int i = 0;
foreach (string line in lines)
{
if (line.Contains("EFIX"))
{
linesArr = line.Split(delimiterChars);
for (int x = 0; x < linesArr.Length; x++)
{
MultiArr[i][x] = linesArr[x];
}
Console.WriteLine(fixationsData[i]);
i++;
}
}
使用字符串列表列表應該可以正常工作。 這就是我要寫的。
var lines = System.IO.File.ReadAllLines(fileName);
var multiArr = new List<List<string>>();
var i = 0;
foreach (var line in lines.Where(line => line.Contains("EFIX")))
{
multiArr.Add(line.Split(delimiterChars).ToList());
Console.WriteLine(fixationsData[i]);
i++;
}
LINQ使這一點變得微不足道。
string[][] data = File.ReadLines(filename)
.Where(line => line.Contains("EFIX"))
.Select(line => line.Split(delimiterChars))
.ToArray();//omit this last call to allow the data to be streamed,
//greatly removing the memory footprint of the application at no real
//additional cost, assuming you have no compelling reason to eagerly
//load the whole file into memory.
foreach(var line in data)
Console.WriteLine(line);
String[] lines = System.IO.File.ReadAllLines(fileName);
String[] linesArr;
List<String[]> MultiArr = new List<String[]>();
foreach (string line in lines)
{
if (line.Contains("EFIX"))
{
linesArr = line.Split(delimiterChars);
MultiArr.Add(linesArr);
Console.WriteLine(fixationsData[i]);
}
}
這是字符串數組的列表。 這就是您要尋找的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.