コード例 #1
0
ファイル: CsvReaderBenchmarks.cs プロジェクト: vebin/Sylvan
        static void ProcessData(CsvDataReader dr)
        {
            var types = new TypeCode[dr.FieldCount];

            for (int i = 0; i < types.Length; i++)
            {
                types[i] = Type.GetTypeCode(dr.GetFieldType(i));
            }
            while (dr.Read())
            {
                for (int i = 0; i < dr.FieldCount; i++)
                {
                    switch (types[i])
                    {
                    case TypeCode.Int32:
                        var v = dr.GetInt32(i);
                        break;

                    case TypeCode.Double:
                        if (i == 4 && dr.IsDBNull(i))
                        {
                            break;
                        }
                        var d = dr.GetDouble(i);
                        break;

                    case TypeCode.String:
                        var s = dr.GetString(i);
                        break;

                    default:
                        break;
                    }
                }
            }
        }
コード例 #2
0
ファイル: CsvDataReader.cs プロジェクト: vebin/Sylvan
 public bool MoveNext()
 {
     return(reader.Read());
 }