C#如何读取txt文本数据?
数据以空格隔开,且空格数量不等如何将其中数据导入DataTable?跳过前两行*开头的,后面还有其他字符...
数据以空格隔开,且空格数量不等
如何将其中数据导入DataTable?
跳过前两行*开头的,后面还有其他字符 展开
如何将其中数据导入DataTable?
跳过前两行*开头的,后面还有其他字符 展开
1个回答
展开全部
下面的控制台应用程序实现要求的功能
using System;
using System.IO;
using System.Data;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
// 新建一个DataTable
DataTable tb = new DataTable();
// 添加一列用于存放读入的浮点数
DataColumn c= tb.Columns.Add("Value", typeof(double));
// 打开文件准备读取数据
StreamReader rd = File.OpenText(@"d:\data.txt");
string line;
// 循环读出文件的每一行
while ((line = rd.ReadLine()) != null)
{
// 拆分出一行的所有用空格分割的数据项
string[] values = line.Split(' ');
// 将每个数据项转换成浮点数,并存入DataTable
foreach (string s in values)
{
if (!string.IsNullOrEmpty(s))
{
// 转换成浮点数
double v = double.Parse(s);
// 存入DataTable
DataRow r = tb.NewRow();
r["Value"] = v;
tb.Rows.Add(r);
}
}
}
rd.Close();
//输出DataTable中保存的数组
foreach (DataRow r in tb.Rows)
{
Console.WriteLine(r["Value"]);
}
}
}
}
D:\Data.Txt内容为
程序运行结果
追问
非常感谢!
不过这每一列数字都不一样啊,期望的显示效果不是这样的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询