दिलचस्प पोस्ट
.NET में MemoryStream को Excel कार्यपुस्तिका कैसे लिखूँ? मैं सी (होस्टनाम और डोमेन जानकारी) में वर्तमान मशीन का पूरा होस्टनाम कैसे खोजूं? मैं PHP में एक साधारण क्रॉलर कैसे बनाऊं? लोगों को मेरे स्रोत कोड की प्रतिलिपि बनाने से रोकने के कुछ अच्छे तरीके क्या हैं? JSON युक्त नई लाइन वर्णों को पार्स करना सूचियों को ट्यूपल्स की सूची में कैसे मर्ज करना है? एएसपी के लिए jQuery के माध्यम से JSON डेटा पोस्टिंग। नेट MVC 4 नियंत्रक कार्रवाई System.out.println का उपयोग कर विशेष अक्षर प्रदर्शित करें अनुसूची आर स्क्रिप्ट का इस्तेमाल क्रोन से करें C # से पावरशेल्स सीएमडीलेट्स को शामिल करना UISegmentedControl का फ़ॉन्ट आकार बदलें WPF एनिमेशन: स्टोरीबोर्ड एनीमेशन के "टू" विशेषता के लिए बाध्यकारी एकाधिक क्वेरीज़ के साथ php / mysql मंडल में मंडल की स्थिति जावा में एक्सएम क्वेरी करने का सबसे सरल तरीका

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

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

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

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

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

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

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

के रूप में चलाने के लिए जाओ और 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