【问题标题】:Most efficient way to read text file and dump content into JTextArea读取文本文件并将内容转储到 JTextArea 的最有效方法
【发布时间】:2012-10-22 14:46:20
【问题描述】:

我很好奇最有效的方法是读取文本文件(不要担心大小,它相当小,所以java.io 很好),然后将其内容转储到JTextArea 以供显示。

例如我可以以某种方式在单个字符串中使用整个文件,然后使用JTextArea.setText 来显示它,还是应该逐行或字节数组读取并将它们填充到 StringBuffer 中,然后将文本区域设置为那个?

谢谢

【问题讨论】:

    标签: java swing jtextarea java-io jtextcomponent


    【解决方案1】:

    您可以允许JTextArea 组件使用Reader 读取文件的InputStream,而不是读取文件的全部内容:

    FileReader fr = new FileReader(fileName);
    textArea.read(fr, null);
    

    【讨论】:

      【解决方案2】:

      您可以使用JTextComponent.read(Reader, Object) 并将其传递给FileReader。只需这样做:

      Java 7 -- 尝试资源块

      try (FileReader reader = new FileReader("myfile.txt")) {
          textArea.read(reader, null);
      }
      

      Java 6 -- try-finally 块

      FileReader reader = null;
      try {
          reader = new FileReader("myfile.txt");
          textArea.read(reader, null);
      } finally {
          if (reader != null) {
              reader.close();
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-02-14
        • 1970-01-01
        • 1970-01-01
        • 2019-04-12
        • 1970-01-01
        • 2017-07-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多