0
我有一個文本文件「read.txt」像這樣如何從C#中的文本文件讀取int []?
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#文件中
謝謝。
我有一個文本文件「read.txt」像這樣如何從C#中的文本文件讀取int []?
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#文件中
謝謝。
您可以使用以下方法來解決你的任務:
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()
來獲得你的陣列。
我不知道確切的目標是什麼,但我的猜測是,你需要這樣的:
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;
}
這是假設你的第一個字符是字母/鍵。 您將擁有一本字典,其中您的字母是鍵,值是數組。
你想在編譯時生成c#源文件,這是正確的嗎? – Constantin