मेरे पास एक प्रोग्राम है test.java:System.setOut() के साथ Runtime.getRuntime()। Exec() आउटपुट को रीडायरेक्ट करें।
import java.io.*;
public class Test {
public static void main(String[] args) throws Exception {
System.setOut(new PrintStream(new FileOutputStream("test.txt")));
System.out.println("HelloWorld1");
Runtime.getRuntime().exec("echo HelloWorld2");
}
}
यह हैलोवर्ल्ड 1 और हैलोवर्ल्ड 2 को फ़ाइल text.txt पर प्रिंट करना है। हालांकि, जब मैं फ़ाइल देखता हूं, तो मुझे केवल HelloWorld1 दिखाई देता है।
HelloWorld2 कहां गया? क्या यह पतली हवा में गायब हो गया?
आइए कहें कि मैं HelloWorld2 को test.txt पर भी रीडायरेक्ट करना चाहता हूं। मैं कमांड में सिर्फ ">> test.txt" नहीं जोड़ सकता क्योंकि मुझे पहले से ही एक फ़ाइल मिल जाएगी। फिर मेरे द्वारा इसे कैसे किया जाएगा?
क्या यह रनटाइम का उपयोग करने की आवश्यकता है? – Navi
@Navi: क्या कोई विकल्प है ?! कहना। मैं जानना चाहता हूँ! या आप ProcessBuilder का उपयोग करने का मतलब है –