我是 c# 新手,所以这可能有点傻。
我想将整数列表或整数数组写入文件。
如果我使用C,我可能会写成如下。
为了节省
int a[1024] = {0,};
fwrite(a,sizeof(int),1024,fp);
Run Code Online (Sandbox Code Playgroud)
装载用
int *a = null;
fseek(fp, 0, SEEK_END);
int ArraySize = ftell(fp)/sizeof(int);
a = (int*)malloc(sizeof(int)*ArraySize);
fread(a,sizeof(int),1024,fp);
Run Code Online (Sandbox Code Playgroud)
有什么好的保存和加载方法吗?
以下是我的 C# 代码。
保存
List<List<int>> a = new List<List<int>>();
...
...
StreamWriter wt = new StreamWriter(path);
foreach(List<int> i in a)
{
wt.WriteLine(string.Join(",",i));
}
Run Code Online (Sandbox Code Playgroud)
加载中
List<List<int>> a = new List<List<int>>();
...
...
StreamReader rd = new StreamReader(path);
string s = "";
while((s=rd.ReadLine())!=null)
{
a.add(s.split(',').select(int.Parse).toList());
}
Run Code Online (Sandbox Code Playgroud)
如果你们有任何想法,请帮助我。
您可以利用File.WriteAllLines和File.ReadAllLines。例如,
写入文件
File.WriteAllLines(filePath,list.Select(x=>x.ToString()));
Run Code Online (Sandbox Code Playgroud)
从文件中读取
var readList = File.ReadAllLines(filePath).Select(x=>Convert.ToInt32(x)).ToList();
Run Code Online (Sandbox Code Playgroud)
使用“Convert.ToInt32”Enumerable.Select方法将序列的每个元素(在本例中是从文本文件读取的所有行)投影为整数。
| 归档时间: |
|
| 查看次数: |
2206 次 |
| 最近记录: |