【问题标题】:Which capability exists only in java.io.FileWriter?哪种能力只存在于 java.io.FileWriter 中?
【发布时间】:2015-07-20 05:07:25
【问题描述】:

哪些能力只存在于java.io.FileWriter

A.关闭一个打开的流。

B.冲洗开放的溪流。

C.写入开放流。

D.将行分隔符写入打开的流。

我知道它不是 D,因为行分隔符仅使用 BufferedWriter 的 newLine() 方法编写。但我不确定哪个是正确答案。我只是在找不到答案后才发布这个问题。

请指教。

【问题讨论】:

  • 忠告:2015年不要使用FileWriter;改用 java.nio.file 和 Files.newBufferedWriter()。另外,“仅在 FileWriter 中”而不是其他什么?
  • "only" 而不是什么?你把它和什么比较?
  • 我猜这最初来自一个问题列表,它(希望)建立了上下文。
  • 这个问题的每一部分都由 Javadoc 回答。
  • 所有 4 个在其他 JCL 类中也可用。例如PrintWriterclose()flush()write()println()。此外,我认为在这些情况下谈论Stream 在技术上是错误的。与FileOutputStream(或OutputStream)相比,它是println()

标签: java stream java-io filewriter buffering


【解决方案1】:

从技术上讲,我认为这些都不正确。在我能找到的任何 Java 版本中,这些都不是 FileWriter 独有的。

事实上,FileWriter 没有实现 flush(),但 OutputStreamWriter 实现了。

除了直接使用或直接子类化之外,我想不出除了 FileWriter 之外的任何内置扩展 OutputStreamWriter,所以这应该为您指明正确的方向!

【讨论】:

    【解决方案2】:

    正确答案是:D. 将行分隔符写入打开的流。

    说明: BufferedWriter 中提供了一个 newLine() 方法,FileWriter 中没有。

    【讨论】:

      猜你喜欢
      • 2014-11-26
      • 2010-12-17
      • 2013-05-27
      • 1970-01-01
      • 2019-07-04
      • 1970-01-01
      • 2017-12-02
      • 2021-06-11
      • 1970-01-01
      相关资源
      最近更新 更多