2022年1月30日日曜日

C# 抽象クラスの活用

 ファイルの読み込みに抽象クラスを活用してみた。ジェネリック(T)使えば、クラスが違うごとに、毎回似たようなコーディングを書かなくてよくなり、効率的かも。listToListTの実装だけ、クラスごとに実装することになります。

 public abstract class Afilerw<T> : Ifilerw<T>
    {
        public List<T> load(string path)
        {
            List<T> lst = new List<T>();
            StreamReader sr = new StreamReader(@path, System.Text.Encoding.GetEncoding("shift_jis"));
            {
                while (!sr.EndOfStream)
                {
                    string line = sr.ReadLine();
                    string[] values = line.Split(',');
                    List<string> lists = new List<string>();
                    lists.AddRange(values);        
                    T sh = listToListT(lists);
                    lst.Add(sh);
                }
            }
            sr.Close();  
            return lst;
        }

        protected abstract T  listToListT(List<string> lstt);

0 件のコメント:

コメントを投稿