我有一个像这样的文本文件“read.txt”
a 1 2 3 4
b 4 6 7 8
c 5 6 7 1
...
在C#中我想定义:
int[] a = {1,2,3,4};
int[] b = {4, 6, 7, 8};
int[] c= {5, 6, 7, 1};
...
我想问一下如何读取所有行并将其放入c#文件中,如上所述
谢谢。
答案 0 :(得分:1)
我不确定具体目标是什么,但我猜你需要这样的东西:
public Dictionary<string, int[]> GetArraysFromFile(string path)
{
Dictionary<string, int[]> arrays = new Dictionary<string, int[]>();
string[] lines = System.IO.File.ReadAllLines(path);
foreach(var line in lines)
{
string[] splitLine = line.Split(' ');
List<int> integers = new List<int>();
foreach(string part in splitLine)
{
int result;
if(int.TryParse(part, out result))
{
integers.Add(result);
}
}
if(integers.Count() > 0)
{
arrays.Add(splitLine[0], integers.ToArray());
}
}
return arrays;
}
这假设你的第一个字母是字母/键。 您将拥有一个字典,其中您的字母是键,值是数组。
答案 1 :(得分:0)
您可以使用以下方法来解决您的任务:
System.IO.File.ReadAllLines // Read all lines into an string[]
string.Split // Call Split() on every string and split by (white)space
Int32.TryParse // Converts an string-character to an int
要创建ints
数组,我将首先在其中创建List<int>
和Add()
每个已解析的整数。您可以在列表上调用ToArray()
来获取阵列。