【问题标题】:Java - I can't write a string to a file if the string begins with "<"Java - 如果字符串以“<”开头,我无法将字符串写入文件
【发布时间】:2014-10-20 08:24:44
【问题描述】:

如果我使用以下代码:

try {
        writer = new BufferedWriter(new OutputStreamWriter(
              new FileOutputStream(fileName), "utf-8"));


        writer.write("<title>");




    } catch (IOException e) {

      throw new RuntimeException(e);

    } finally {

       try {
           writer.close();
       } catch (Exception e) {
           throw new RuntimeException(e);
       }

    }

文件中没有显示任何内容,但如果我删除 "" 它工作正常。我该如何解决这个问题?

【问题讨论】:

  • 真的 - 你的文件名是什么?
  • 似乎对我有用。你的 JDK 版本是多少?
  • 如何检查文件的内容?
  • 使用 writer.close() 方法。
  • @VishveshPhadnis 他在 finally 块中调用 writer.close()

标签: java file io output


【解决方案1】:

问题不在于您的代码,而在于您用来查看输出的查看器(编辑器)。它不是向您显示纯文本,而是解释文件中的数据,并向您显示其解释。使用记事本或 vi 等普通编辑器查看文件中的内容。

【讨论】:

    【解决方案2】:

    写完后尝试刷新你的作家:

    writer.write("<title>");
    writer.flush();
    

    【讨论】:

    • 那么如果不使用&lt;,为什么他不需要刷新?
    • 作家是否会自行刷新有点随机。冲洗它可以为您提供更多控制权并“可能”解决问题。
    猜你喜欢
    • 1970-01-01
    • 2014-06-20
    • 2016-08-29
    • 2015-07-16
    • 2016-05-27
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多