दिलचस्प पोस्ट
मैं जावा के लिए एक अलग कंपाइलर संस्करण का उपयोग कैसे करूं? आइटम के लिए अभिभावक पुनर्प्राप्त करने में त्रुटि: कोई संसाधन नहीं मिला जो AppCompat v23 को अपग्रेड करने के बाद दिए गए नाम से मेल खाता है मैं RAILS_ENV को एक रेक कार्य में कैसे लागू कर सकता हूं? एंड्रॉइड: स्लाइडिंग ड्रॉवर की ऊंचाई wrap_content के साथ सेट की जा सकती है? क्या ऑर्डर ऑब्जेक्ट्स एक jQuery चयनकर्ता द्वारा उल्लिखित हैं? Cakephp में getLastInsertId () के बराबर क्या है? सर्वर का आईपी पता कैसे प्राप्त करें जिस पर मेरा सी # एप्लिकेशन चल रहा है? सभी उपलब्ध matplotlib बैकएंड्स की सूची PHP में कनेक्शन पूलिंग क्या आपको अपने <script> टैग में निर्दिष्ट पाठ / जावास्क्रिप्ट की आवश्यकता है? वेक्टर को सी ++ में सरणी में कनवर्ट कैसे करें जीसी ओवरहेड सीमा पार हो गई Matplotlib: विभिन्न रंगों के साथ कई डिस्कनेक्ट किए गए लाइन खंडों को प्लॉट करते हुए पाठ फ़ाइलों को एक नई पंक्ति के साथ समाप्त क्यों करना चाहिए? AngularJS निर्देश में ग्लोबल जेएस वैरिएबल कैसे एक्सेस करें

हम एक जावा प्रोग्राम कंसोल आउटपुट को कई फाइलों में कैसे रीडायरेक्ट कर सकते हैं?

हम एन्क्लेक्स कंसोल आउटपुट को एक फाइल में कैसे रीडायरेक्ट कर सकते हैं? हाँ मैं:

  1. Run Configuration -> Commons -> Select a file
  2. System.setOut(PrintStream) और System.setOut(PrintStream) उपयोग करें

1 के साथ समस्या) यह है कि मुझे कंसोल आउटपुट को एक फ़ाइल के बजाय अलग-अलग फाइलों में रिकॉर्ड करने की आवश्यकता है

2 के साथ समस्या) यह है कि यह केवल System.out.println() या एक अपवाद के स्टैकट्र्रेस द्वारा उत्पन्न कंसोल आउटपुट को फेंक दिया जाता है। यह अन्य प्रकार के आउटपुट जैसे कि log4j चेतावनियां आदि नहीं कैद करता है।

हम कंसोल आउटपुट को अलग-अलग फाइलों को प्रोग्राम में कैसे रीडायरेक्ट कर सकते हैं?

वेब के समाधान से एकत्रित समाधान "हम एक जावा प्रोग्राम कंसोल आउटपुट को कई फाइलों में कैसे रीडायरेक्ट कर सकते हैं?"

के रूप में चलाने के लिए जाओ और Run Configurations -> Common और मानक इनपुट और आउटपुट में आप एक फाइल भी चुन सकते हैं।

आप आउटपुट फाइलनाम के अंदर एक "चर" का उपयोग कर सकते हैं, उदाहरण के लिए:

 /tmp/FetchBlock-${current_date}.txt 

आज की तारीख:

YyyyMMdd_HHmm के रूप में स्वरूपित वर्तमान सिस्टम समय लौटाता है एक वैकल्पिक तर्क का उपयोग वैकल्पिक स्वरूपण प्रदान करने के लिए किया जा सकता है। इस तर्क को java.util.SimpleDateFormat के लिए मान्य पैटर्न होना चाहिए।

या आप कुछ डायनेमिक (या तो एक को तर्क के रूप में निर्दिष्ट करने की आवश्यकता है) को निर्दिष्ट करने के लिए system_property या env_var का उपयोग कर सकते हैं

आप सिस्टम.आउट आउटपुट को प्रोग्राम करके सेट कर सकते हैं:

 System.setOut(new PrintStream(new BufferedOutputStream(new FileOutputStream("/location/to/console.out")), true)); 

संपादित करें:

तथ्य यह है कि यह समाधान एक PrintStream पर आधारित है, हम ऑटोफ़्लश को सक्षम कर सकते हैं, लेकिन डॉक्स के अनुसार:

ऑटो फ्लश – एक बूलीयन; यदि सत्य है, तो जब एक बाइट सरणी लिखी जाती है, आउटपुट बफ़र को फ़्लश किया जाएगा, println तरीकों में से एक को लागू किया जाता है, या एक नया अक्षर या बाइट ('\ n') लिखा जाता है

इसलिए यदि एक नई लाइन नहीं लिखी है, तो System.out.flush() मैन्युअल रूप से याद रखें।

(धन्यवाद रॉबर्ट ट्यूपेलो-शनक)

हम इसे निम्न तरीके से सिस्टम क्लास के चर को सेट करके कर सकते हैं

System.setOut (नया प्रिंटस्ट्रीम (नया फाइलऑप्टपुट स्ट्रीम ("आउटपुट फाइल के लिए पथ")))। इसके अलावा आपको 'आउट' (System.out.close) या System.out.flush ()) वैरिएबल को बंद या फ्लश करने की आवश्यकता है ताकि आप कुछ आउटपुट खो देंगे।

स्रोत: http://xmodulo.com/how-to-save-console-output-to-file-in-clipse.html