1

いくつかの辞書をストリームライターとストリングビルダーに送信していますが、出力ファイルには辞書の情報の1つだけが表示されます。すべてを一度に出力するために何をすべきかわかりません。コードは以下のとおりです。ありがとうございます。

public void RunReport()
{
    CSVProfileCreate(genderKeys, genderValues);
    CSVProfileCreate(ageKeys, ageValues);
}

public void CSVProfileCreate<T>(Dictionary<T, string> columns, Dictionary<T, int> data)
{
    using (StreamWriter write = new StreamWriter("c:/temp/testoutputprofile.csv"))
    {
        StringBuilder output = new StringBuilder();

        IEnumerable<string> col = columns.Values.AsEnumerable();
        IEnumerable<int> dat = data.Values.AsEnumerable();

        for (int i = 0; i < col.Count(); i++)
        {
            output.Append(col.ElementAt(i));
            output.Append(",");
            output.Append(dat.ElementAt(i));
            output.Append(",");
            output.Append(Environment.NewLine);
        }

        write.Write(output);
    }
}
4

1 に答える 1

2

Try calling

write.Flush();

after the write.

EDIT:

Sorry, just read your question again,

try:

using (StreamWriter write = new StreamWriter("c:/temp/testoutputprofile.csv", true))
于 2013-01-11T02:36:32.730 に答える