Chuyển Datetime từ Excel vào trong Database

– Trong Excel, dữ liệu về ngày tháng không được lưu ở dạng ngày tháng (DateTime) mà được lưu ở dạng Double và được đánh dấu là loại (Type) ngày tháng (Date). Cho nên lúc ta lấy dữ liệu ra để sử dụng trong chương trình thường được trả về một nguyên chừng 40 000 nên không thể sử dụng được. Muốn sử dụng cần phải dùng TimeSpan để chuyển đổi từ số nguyên thành ngày tháng lại.

String ngayhieuLuc = eM.GetCellValue(“L” + i);
if (ngayhieuLuc.Trim() != “”)
{
TimeSpan datefromexcel = new TimeSpan(Convert.ToInt32(ngayhieuLuc) – 2, 0, 0, 0);
item.NgayHieuLuc = new DateTime(1900, 1, 1).Add(datefromexcel);
}
Đầu tiên lấy chuỗi kí tự từ trong cell của Excel. Xem xét xem có dữ liệu hay không. Sau đó dùng TimeSpan để lấy số nguyên từ trong Excel ra rồi add nó vào trong DateTime là xong.

Do ngayhieuluc lúc này cần phải được convert nên có thể dùng
int myInt;
bool result = Int32.TryParse(item.DuyetNgay, out myInt);

Đó là những gì cần biết

Tagged: , , , , , ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: