banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows [Hỏi]Convert một Date Time string qua DateTime  XML
  [Programming]   [Hỏi]Convert một Date Time string qua DateTime 30/11/2008 17:36:02 (+0700) | #1 | 160760
VaT
Member

[Minus]    0    [Plus]
Joined: 04/09/2008 00:17:52
Messages: 87
Offline
[Profile] [PM]
Em viết một ứng dụng bằng Visual C++ MFC và trong ứng dụng của em có sử dụng dữ liệu về ngày tháng để tính toán. Và dữ liệu đó được lưu trong file Access.
Khi em truy xuất dữ liệu ngày tháng từ file Access đó thì nó ở dươi dạng CString (vì em thấy trong class CDBVariant không hỗ trợ việc lấy giá trị theo ngày tháng nên em để mặc định là kiểu CString) thì có dạng như sau: 29/11/2008

Vậy làm thế nào để convert 29/11/2008 (CString) thành CTime trong C++ để em có thể truy xuất dễ dàng đến ngày, tháng, năm một cách nhanh chóng.

Trong C++.Net em có thấy có class DateTime, và có hàm ParseExact để làm điều này nhưng CString ở dạng 29112008 chẳng hạn thì mới làm được. Còn ở C++ MFC thì em chỉ mới biết có lớp CTime để làm việc với Date Time nhưng chỉ có hàm Format của lớp CTime dùng để chuyển Date Time qua CString thôi.
[Up] [Print Copy]
  [Question]   Re: [Hỏi]Convert một Date Time string qua DateTime 30/11/2008 23:51:15 (+0700) | #2 | 160771
mfeng
Researcher

Joined: 29/10/2004 15:16:29
Messages: 243
Offline
[Profile] [PM]
Nếu biết rõ format của chuỗi "Date Time", bạn có thể phân tách ("parse") ra CTime được. Vd, 29/11/2008: tách chuỗi làm 3 thành phần theo token "/", trong đó thành phần đầu tiên là ngày, tiếp theo là tháng và cuối cùng là năm.
[Up] [Print Copy]
  [Question]   Re: [Hỏi]Convert một Date Time string qua DateTime 01/12/2008 05:44:17 (+0700) | #3 | 160812
VaT
Member

[Minus]    0    [Plus]
Joined: 04/09/2008 00:17:52
Messages: 87
Offline
[Profile] [PM]
Nếu sử dụng các hàm của lớp CString để tách string kiểu 29/11/2008 ra theo token "/" rồi convert qua kiểu int rồi chuyển qua lớp CTime thì em biết rồi.

Nhưng điều em cần tìm hiểu xem, là có lớp nào về DateTime trong C++ MFC hỗ trợ việc này không, khi trong dotNet thì có.

Và hôm nay em tìm ra một lớp có thể giúp mình làm công việc ở trên dễ dàng là : COleDataTime với hàm ParseDateTime .

Cảm ơn mọi người đã đọc và trả lời.
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|