0

現在、CSV ファイルを分析して、特定の条件を満たすアイテムのみを出力しようとしています。CSVHelper ライブラリを使用しています。

これまでのところ、ファイルをインポートすることができ、エクスポートすることもできます。

何らかの理由で、エントリ数が 3 倍になっています。のように、値を 1 回正常に処理し、すべての値を 2 回続けて出力します。お気に入り:

A
B
C
D
A
A
B
B
C
C
D
D

これが質問 1 です。なぜですか。

質問 2: 基準を満たすデータのみをフィルタリングして出力するにはどうすればよいですか? 列 2 は年齢で、年齢は 62 歳以上である必要があります。

以下はこれまでの私のコードです:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Diagnostics;
using CsvHelper;
using System.Collections;

namespace firstdraft
{
    class Program
    {
        public String Name { get; set; }
        public String Age { get; set; }

        private static void Main(string[] args)
        {
            using (var sr = new StreamReader(@"people.csv"))
            {
                using (var sw = new StreamWriter(@"results.csv"))
                {
                    var reader = new CsvReader(sr);
                    var writer = new CsvWriter(sw);

                    IEnumerable<Program> records = reader.GetRecords<Program>().ToList();

                    writer.WriteRecords(records);

                    foreach (Program record in records)
                    {
                        writer.WriteRecord(record);
                        writer.WriteField(record.Name);
                        writer.WriteField(record.Age);
                        writer.NextRecord();
                    }
                }
            }
        }
    }
}
4

1 に答える 1