我需要创建一个平面文件从数据库表与固定的字段长度

本文关键字:数据库 段长度 字段 平面文件 创建 一个 | 更新日期: 2023-09-27 18:15:21

导出需要是固定长度的文件,这意味着每个字段将具有预定义的位置和长度,如下所示:

Field A: 20 char
Field B: 15 char
Field C: 10 char

适用于以下值:

<>之前字段A字段B字段C测试1测试2测试3这是值1,这是值2,这是va之前

平面文件内容应为:

<>之前测试1测试2测试3这是值1,这是值2,这是va之前

像Test 1字段都有20个字符包括空格到字段Test 2和相同的Test 2字段有15个字符到字段Test 3和Test 3字段也有15个字符到字段结束包括空格。

请告诉我解决方案,无论是我想从SQL server数据库表或c#编码任何方式生成它。

我需要创建一个平面文件从数据库表与固定的字段长度

下面的代码展示了如何做到这一点:

// 1 reading data from database
var data = new List<Tuple<string, string, string>>();
for (var i = 0; i < 10; i++)
{
    data.Add(new Tuple<string, string, string>(i.ToString(), (i + 1).ToString(), (i * 3000).ToString()));
}
// 2 writing data to file
foreach (var record in data)
{
    var str = string.Format("{0,-20}{1,-15}{2,-10}", record.Item1, record.Item2, record.Item3);
    Console.WriteLine(str); // <- or file.WriteLine(...)
}

因为我不知道你的模型(或领域)对象是什么,我使用了一个简单的Tuple<string, string, string>代替。