|
■No97317 (furu さん) に返信
> ■No97316 (素人44 さん) に返信
>>C#での時間の分岐についてご教示願います。
> 時刻でなく、時間ならTimeSpanを使います。
>
> TimeSpan 時間;
> int 高さ;
>
> if (時間 >= new TimeSpan( 8, 0, 0) && 時間 <= new TimeSpan( 8, 5, 0)) 高さ = 10;
>
> あとはこれの繰り返しですが、秒以下の精度も持っていることを考慮してください。
>
> 8時5分0秒234の場合、高さは10なのか20なのか、それとも不定なのか。
8時5分0秒234の場合は、高さは10と考えています。
D5 = Convert.ToString(Form1.DataList[i][5]);
DateTime dtBirth = DateTime.Parse(D5);
d = dtBirth.ToString("HH:mm:ss");
D4 = Convert.ToDouble(Form1.DataList[i][3]);
DateTime dt;
DateTime dtBegin;
DateTime dtEnd;
dt = DateTime.Parse(d);
dtBegin = DateTime.Parse(Convert.ToString(dataGridView1[0, 0].Value));
dtEnd = DateTime.Parse(Convert.ToString(dataGridView1[0, dataGridView1.RowCount - 1].Value));
if (((dtBegin <= dt) && (dt <= dtEnd)))
{
for (int ii = 0; ii <= dataGridView1.RowCount; ii++) //Grid2の行数
{
D1 = Convert.ToString(dataGridView1[0, ii].Value);
DateTime dt1 = DateTime.Parse(D1);
//20160322
//DateTime dt2 = dt1.AddMinutes(-10);
DateTime dt2 = DateTime.Parse(D1);
//DateTime dt3 = dt1.AddMinutes(10);
DateTime dt3 = dt1.AddMinutes(5);
if (dtBirth <= dt3 && dtBirth >= dt2) //ここの分岐方法が分かりません //00:00:00〜00:05:00 00:05:01〜00:15
{
DataRow drow = dtable.NewRow();
}
else
{
val_sub2 = Convert.ToDouble(dataGridView1[1, ii].Value); ;
}
break;
}
else
{
}
}
|