c#一个文本文件存放一个数组,每行存放一个数字

c#一个文本文件存放一个数组,每行存放一个数字求帮忙
2024年11月19日 13:18
有1个网友回答
网友(1):

(1)文本文件中的数据按行存放,每行一个数据,数据的数量不定,可多可少。从文本文件中读入的数据并转换后,先存放泛型集合List,最后再将List转换成一维数组。
(2)实现代码:文本文件 D:\data.txt 中存放的数据为浮点类型,每行一个数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57

using System;
using System.Collections.Generic;
using System.IO;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string filePath = @"d:\data.txt";

// 从数据文件读取数据
float[] values = GetDataFromFile(filePath);

// 显示数据
for (int i = 0; i < values.Length; i++)
{
Console.WriteLine(values[i]);
}

Console.WriteLine("按Enter键退出");
Console.ReadLine();
}

static float[] GetDataFromFile(string datafilePath)
{
// 创建泛型列表
List list = new List();

// 打开数据文件 D:\data.txt逐行读入
StreamReader rd = File.OpenText(datafilePath);
string line;
while ((line = rd.ReadLine()) != null)
{
// 将读入的数据转换成float类型值
float result;
if (float.TryParse(line, out result))
{
// 转换成功,加入到泛型列表
list.Add(result);
}
else
{
// 转换失败,显示错误提示
Console.WriteLine("数据格式错误!");
}
}
// 关闭文件
rd.Close();

// 将泛型列表转换成数组
return list.ToArray();
}
}
}