トップページ > プログラム > 2016年09月18日 > Vs//CHex0

書き込み順位&時間帯一覧

35 位/178 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000010100000000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん (ワッチョイ 03cb-D0fg)
ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net

書き込みレス一覧

ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
677 :デフォルトの名無しさん (ワッチョイ 03cb-D0fg)[sage]:2016/09/18(日) 08:10:21.19 ID:Vs//CHex0
public class ListValue {
  public string Col1;
  public string Col2;

  public static void LoadFromFile(List<ListValue> list, string filename) {
    if (File.Exists(filename)) {
      using (StreamReader reader = new StreamReader(filename, Encoding.GetEncoding("shift-jis"))) {
        while (!reader.EndOfStream) {
          string line = reader.ReadLine();
          string[] splitData = line.Split('\t');

          var tmp = new ListValue();
          tmp.Col1 = splitData[0];
          tmp.Col2 = splitData[1];
          list.Add(tmp);
        }
      }
    }
  }
}

のような感じでTSVをLISTに読み込んでいますが、列数が数十もあると
tmp.Col1 = splitData[0];
tmp.Col2 = splitData[1];
が面倒なのでループにしたいと思ってます。

イメージとしては
for(略) {
  tmp[i] = splitData[i];
}
こんな感じですが、tmp[i]のような書き方はできないようです。
どのように書けばループに出来るでしょうか。
ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
680 :デフォルトの名無しさん (ワッチョイ 03cb-D0fg)[sage]:2016/09/18(日) 10:43:54.66 ID:Vs//CHex0
>>678
ありがとうございます。
列名を配列にするとLINQが使いにくいのかなと思っています。
以前にLISTのLISTを作った時にそうだったので、配列も同じかなと。
ですが、考え方は勉強になりました。

>>679
ありがとうございます。
こちらは列名がそのまま使えるのでいいかなと思ったのですが、
ハイレベルすぎてついて行けませんでした。

結局のところ私のようなレベルであれば、数十列あったとしても
全部書いてる方が間違いがないようです。
列が増えた時に忘れそうですが・・・

ありがとうございました。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。