Warum hat die BufferedReader
Klasse eine readLine()
Methode, aber die BufferedWriter
Klasse hat keine writeLine(String)
Methode? Jetzt müssen wir write(str + "\n")
oder write(str)
und newLine()
tun.BufferedWriter Klasse writeLine Methode
Antwort
Lesen durch Javadocs Ich sehe keinen bestimmten Grund, warum eine writeLine()
Methode nicht zur Verfügung gestellt wird. Mit den bereitgestellten write
Methoden puffert BufferedWriter die Zeichen vor dem Schreiben aus Effizienzgründen. Das Bereitstellen einer neuen writeLine()
-Methode fügt keinen Wert hinzu, da der Zeichenstrom, der in dieser imaginären writeLine
-Methode bereitgestellt wird, gepuffert und nur geschrieben wird, wenn der Puffer voll ist.
Sie können zu PrintWriter Klasse anstelle von BufferedWriter wechseln, da es println(String str)
Methode bietet, die verwendet werden kann, schreiben Sie eine Zeichenfolge und ein Newline-Zeichen. Dies ist jedoch im Vergleich zu BufferedWriter ineffizient, und es ist besser, dies nur dann zu verwenden, wenn die Ausgabedatei beim Schreiben der println() -Methode sofort die Strings schreiben soll.
Mit BufferedWriter
Klasse aus dem Grund in here genannt besten Ansatz ist write()
und newLine()
Methoden zu verwenden.
Um die Vorteile von BufferedWriter
zu nutzen und den Zugang zu println()
Methode haben, können Sie die unten in javadocs wie vorgeschlagen tun:
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("foo.out")));
out.println("Hello World!");
- 1. writeline Problem in Python
- 2. Wenn ein BufferedWriter
- 3. BufferedWriter schreibt nicht in Java
- 4. FileWriter vs BufferedWriter
- 5. C# Effizientes Überspringen der Console Writeline?
- 6. Java: BufferedWriter überspringt Zeilenumbruch
- 7. Nicht-englischer Buchstabe in BufferedWriter
- 8. Android BufferedWriter: Leere Datei gespeichert.
- 9. FileWrite BufferedWriter und PrintWriter kombiniert
- 10. Java - BufferedWriter nicht schriftlich (nach flush())
- 11. Warum schreibt bufferedwriter nicht in die Datei?
- 12. mit BufferedWriter in der Flasche whooshalchemy
- 13. So schreiben Sie in Standardausgabe mit BufferedWriter
- 14. Verlieren von Daten beim Schreiben mit BufferedWriter
- 15. Allgemeine Klasse Methode forName
- 16. Float-Klasse toString-Methode
- 17. ArrayList-Klasse add-Methode
- 18. Einzel Methode Klasse Ansätze
- 19. . NET Single Line Logging (ala Trace.Write/WriteLine) mit Instrumentation.Logging
- 20. Warum funktionieren Kommas nicht, um Strings in WriteLine einzuschließen?
- 21. Methode lokale innere Klasse vs innere Klasse
- 22. gelten Dekorateur Klasse zu Klasse Methode
- 23. Ist es Overkill, BufferedWriter und BufferedOutputStream zusammen zu verwenden?
- 24. Closing BufferedWriter löscht alle Dateidaten in der Datei?
- 25. Wie schreibe ich den BufferedWriter außerhalb der Hauptfunktion
- 26. PHP-Klasse Privateigentum und Methode
- 27. generische Methode in abstrakte Klasse
- 28. abgeleiteten Klasse die falsche Methode
- 29. Spezialisierung von Template-Klasse Methode
- 30. Methode von vorheriger Klasse aufrufen
sich die Frage nicht beantworten. – YoungHobbit
Ich weiß, dass ich das tun muss, aber ich habe mich nur gewundert, warum es keine bequeme Methode gibt, es in einem Anruf zu tun. Andere Sprachen, die ich kenne, wie C#, haben das. –
@ 0ne_Up - Ich habe nachgeschlagen und konnte kein WriteLine() Äquivalent in der BufferedStream-Klasse von C# finden https://msdn.microsoft.com/en-us/library/system.io.bufferedstream_methods(v=vs.90). aspx. Kannst du mich wissen lassen, auf welche Klasse du dich beziehst? – vk239