कैसे करने के लिए प्रिंट का परिणाम शून्य प्रकार विधि के साथ एक फ़ाइल में जावा PrintWriter

0

सवाल

मैं कर रहा हूँ व्यायाम के लिए जावा प्रोग्रामिंग कोर्स, सवाल में चला जाता है के रूप में इतना:

लिखने की एक विधि कहा जाता printTree कि outputs एक फाइल करने के लिए एक त्रिकोण के तारों के आधार पर ऊँचाई मान पारित करने के लिए प्रक्रिया. परीक्षण इस विधि में मुख्य विधि है ।

  • ई. जी. त्रिकोण की ऊंचाई 3 होना चाहिए उत्पादन करने के लिए कहा जाता है एक फ़ाइल file14:

मैं नहीं हूँ यकीन है कि कैसे लिखने के लिए शून्य रिटर्न फाइल करने के लिए है कि मैं कर दिया है में मुख्य विधि है । मैं करना चाहते हैं को कम करने के लिए आयात करने के लिए किसी भी अन्य जावा.कब अलग तरीकों से FileWriter, लेकिन किसी भी मदद की सराहना की है, धन्यवाद.

import java.io.PrintWriter;

public class OutputToFile14 {

    public static void main(String[] args) throws Exception{
        
        //Creating PrintWriter
        PrintWriter output = new PrintWriter("file14.txt");
        
        //writing method output to file
        output.write(printTree(4));
        
        //saving file
        output.close();
    }

    public static void printTree (int height) throws IOException{
        
        for (int i = 0; i < height; i++) {
            for (int j = 0; j < height; j++) {
                if (j < i) {
                    System.out.print("*");
                }
            }
            System.out.println();
        }
    } 
}
call file java methods
2021-11-24 02:22:55
2

सबसे अच्छा जवाब

3

चार टिप्पणियों. System.out एक PrintStream (और आप पारित कर सकता है एक PrintStream करने के लिए अपने विधि). try-with-Resources की अनुमति देता है आप करने के लिए स्पष्ट को खत्म करने close() कॉल । का उपयोग कर System.getProperty("user.home") की अनुमति देता है लिखने के लिए आप घर में सीधे फ़ोल्डर (जो काम किया जा सकता). और का उपयोग करें j < i के बजाय if (j < i) अपने भीतरी लूप. की तरह,

public static void main(String[] args) throws Exception {
    try (PrintStream output = new PrintStream(
            new File(System.getProperty("user.home"), "file14.txt"))) {
        printTree(output, 4);
    }
}

public static void printTree(PrintStream out, int height) throws IOException {
    for (int i = 0; i < height; i++) {
        for (int j = 0; j < i; j++) {
            out.print("*");
        }
        out.println();
    }
}

इसके अलावा, के बाद से जावा 11,

public static void printTree(PrintStream out, int height) throws IOException {
    for (int i = 0; i < height; i++) {
        out.println("*".repeat(i)); // You might want "*".repeat(1 + i)
    }
}
2021-11-24 02:40:07

एक बेहतर जवाब -- धन्यवाद
Hovercraft Full Of Eels

मैं नहीं कर रहा हूँ बहुत अच्छी तरह से वाकिफ भेजने के साथ एक वस्तु में एक तर्क के रूप में करने के लिए तरीकों की है, लेकिन मैं मान रहा हूँ करने के लिए इसी तरह के अन्य प्रतिक्रिया है, यह मूल रूप से यह बनाता है, तो इसके सभी "एक लाइन": घोषित फ़ाइल, यह नामकरण. और फिर यह जा रहा है में एक प्रिंट स्ट्रीम बनाता है यह तो अपनी sendable एक तर्क के रूप में? मैं सुनने के लिए प्यार होता कुछ स्पष्टता अंक, अपने पाठ्यक्रम एफ के प्रारंभिक दौर में लेखन के लिए फ़ाइल है, तो मैं प्यार करता हूँ और अधिक समझने के लिए
Achor Gabriel

System.out एक PrintStream. आप का निर्माण कर सकते हैं अपने खुद के PrintStream उदाहरणों. करने के लिए लिखने के लिए एक File. इस के साथ निर्माता. के लिए के रूप में भेजने के एक वस्तु के रूप में एक तर्क के, main(String[] args) (यह बहुत पहले की बात आप करते हैं). आशा है कि मदद करता है ।
Elliott Frisch

@ElliottFrisch धन्यवाद! मुझे लगता है कि यह खत्म हो जाएगा की आवश्यकता होती है और अधिक अनुसंधान और इस काम के अंत में, लेकिन, मुझे लगता है कि मैं सही दिशा में निर्देशित. धन्यवाद के लिए है कि मुख्य शीर्षक वास्तव में, मैं कुछ नहीं जानता था, लेकिन अब नहीं है. बहुत सराहना की
Achor Gabriel
-2

आप हल कर सकता है यह इस तरह

import java.io.PrintWriter;

public class OutputToFile14 {

    public static void main(String[] args) throws Exception{
        
        //Creating PrintWriter
        PrintWriter output = new PrintWriter("file14.txt");
        
        //writing method output to file
        output.write(printTree(4));
        
        //saving file
        output.close();
    }

    public static String printTree (int height) throws IOException{
        String output = "";
        
        for (int i = 0; i < height; i++) {
            for (int j = 0; j < height; j++) {
                if (j < i) {
                    System.out.print("*");
                    output += "*";
                }
            }
            System.out.println();
            output += "\r\n";
        }
        return output;
    } 
}

यह एक कुछ हद तक बदसूरत तरीका है इसे हल करने के लिए जल्दी.

import java.io.PrintWriter;

public class OutputToFile14 {

    public static void main(String[] args) throws Exception{
        
        //Creating PrintWriter
        PrintWriter output = new PrintWriter("file14.txt");
        
        //writing method output to file
        //output.write(printTree(4));
        printTree(4, output);
        
        //saving file
        output.close();
    }

    public static void printTree (int height, PrintWriter pw) throws IOException{
        
        for (int i = 0; i < height; i++) {
            for (int j = 0; j < height; j++) {
                if (j < i) {
                    System.out.print("*");
                    pw.write("*");
                }
            }
            System.out.println();
            pw.write("\r\n");
        }
    } 
}
2021-11-24 02:35:23

मैं सराहना करते हैं बहुत अपने जवाब है! मुझे लगता है कि मैं कर रहा हूँ करने के लिए जा रहा से दूर भटका हालांकि इस खेद है, के रूप में मैं सच में पता नहीं कैसे के साथ काम करने पीडब्लू एक पैरामीटर के रूप में भविष्य में संदर्भ के लिए. धन्यवाद, हालांकि, काफी सराहना की है.
Achor Gabriel

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में