2012-01-25 16 views
8

मुझे एक डेटा मिल रहा है जिसमें एक निश्चित संख्या है।सेकंड में डेटा प्राप्त करना, घंटों, मिनटों और सेकंड की गणना करना चाहते हैं

मुझे यह पता लगाना होगा कि कितने घंटे, मिनट और सेकंड इसके लिए खड़े हैं।

उदाहरण के लिए:

मैं संख्या 248 जिसका मतलब है कि हो रही है:

00 घंटे: 04 मिनट: 08 सेकंड

कोई भी विचार वास्तव में apprieciated किया जाएगा!

+0

.. विशेष नियम क्रियान्वित करना चाहिए, जैसा लगता है। – JoxTraex

उत्तर

11

निर्धारित इस तरह घंटे, मिनट और सेकंड:

int hours = (int) (time/3600); 
int minutes = ((int) (time/60)) % 60; 
int seconds = time % 60; 

वैकल्पिक रूप से, अगर आप इस तरह मिनट निर्धारित कर सकते हैं एक बार आप जानते हैं घंटे:

int minutes = (int) ((time - hours * 3600)/60)); 
+0

क्या मंजिल के लिए खड़ा है? – Pisti

+0

कोई बात नहीं, मैं, यह जावा –

+0

FYI करें, मंजिल का अर्थ है 'निकटतम पूर्णांक तक नीचे दौर' बना बस के रूप में '(int) number' जावा में करता है। एक 'Math.floor()' फ़ंक्शन भी है जो 'डबल' देता है। –

1

आपको पहले परिभाषित करना होगा, यह संख्या कैसे बनाई गई है, उदा। कारण है कि यह

00 घंटे, 02 मिनट और 48 sseconds के लिए बर्दाश्त नहीं कर सकता

+0

मुझे एक तथ्य के लिए पता है कि गणना SECONDS पर आधारित है, इसलिए यह होना चाहिए 00:04:08 – Pisti

+0

आह, क्षमा करें, फिर "नाखून" का उत्तर सही है :)। माफ़ कीजिये। यद्यपि आप मिनट 60 मिनट लेना चाहते हैं, इसलिए आपको मिनटों में भी "%" का उपयोग करने की आवश्यकता है। – Martin

+0

हे मेरे पहले जैसा था। यहां तक ​​कि :-) –

3

आपको इसे मिलीसेक में एकाधिक करने की आवश्यकता है। 248 * 1000 की तरह; फिर दिनांक डी = नई तिथि (248 * 1000); और आपके पास डेटा ऑब्जेक्ट होगा। d.getHours()। उदाहरण के लिए भी आप SimpleDateFormat का उपयोग कर सकते हैं। जो कुछ पैटर्न और जैसा yyyy-MM-hh एचएच स्ट्रिंग के लिए यह उत्पादन के साथ डेटा स्वरूपित कर सकते हैं: भ्रमित मिमी

+0

अच्छा दृष्टिकोण, मानक पुस्तकालय नौकरी करते हैं। –