[問題] substring的問題
有爬了板上問有關substring的文,
程式可以跑,
但到最後一筆資料跑完就會出現,
"startIndex 不可以大於字串的長度。" 的問題,
程式碼前有"●"的是會出錯的地方, (很笨不會用顏色QQ )
資料庫取出來的資料是自己用手打的日期(資料型態:char(10)),
資料只有三筆,
都確定startIndex沒超過字串長度(例:2012/08/11),
程式碼:
day1 = Convert.ToInt16(dateTimePicker6.Value.ToString("dd")) -
Convert.ToInt16(dateTimePicker5.Value.ToString("dd"));
label17.Text = Convert.ToString(day1 + 1);
for (m = 0; m < dataGridView5.RowCount; m++)
{
x = Convert.ToString(dataGridView5.Rows[m].Cells[4].Value);
● x1 = Convert.ToInt16(x.Substring(8, 2));
y = Convert.ToString(dataGridView5.Rows[m + 1].Cells[3].Value);
● y1 = Convert.ToInt16(y.Substring(8, 2));
day2 = y1 – x1 - 1;
}
----
懇請各位高手幫忙解惑QQ
----
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 112.105.229.50
※ 編輯: ccccccc540 來自: 112.105.229.50 (08/12 00:55)
→
08/12 01:02, , 1F
08/12 01:02, 1F
啊!我這段程式碼外面有一層 if (m != dataGridView5.RowCount)
※ 編輯: ccccccc540 來自: 112.105.229.50 (08/12 01:09)
→
08/12 02:32, , 2F
08/12 02:32, 2F
→
08/12 02:34, , 3F
08/12 02:34, 3F
→
08/12 02:38, , 4F
08/12 02:38, 4F
→
08/12 02:39, , 5F
08/12 02:39, 5F
我確定我三筆資料都有跑完,
因為我還用messagebox確認三筆都有跑出來。
關於 if (m != dataGridView5.RowCount) 這一行,
我沒打這行的時候會跑空白的messagebox,
打了就沒這個問題,
不知道是不是那行IF的作用。
然後我也確認我日期都有兩碼,
謝謝回復:)
→
08/12 10:24, , 6F
08/12 10:24, 6F
→
08/12 10:25, , 7F
08/12 10:25, 7F
→
08/12 21:25, , 8F
08/12 21:25, 8F
→
08/12 21:25, , 9F
08/12 21:25, 9F
→
08/12 22:20, , 10F
08/12 22:20, 10F
樓上兩為大大說得我會試試,
謝謝回復:)
※ 編輯: ccccccc540 來自: 114.26.78.12 (08/13 03:15)
→
08/13 10:31, , 11F
08/13 10:31, 11F
→
08/13 10:37, , 12F
08/13 10:37, 12F
→
08/13 10:37, , 13F
08/13 10:37, 13F
→
08/13 10:40, , 14F
08/13 10:40, 14F
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章