当前位置: 首页 > 面试题库 >

带FileReader的SwingWorker

夹谷阳夏
2023-03-14
问题内容

我在FileReader上应用SwingWorker时遇到问题,我的观点是我需要在SwingWorker上实现FileReader,以使UI显示文件中的文本,这是我的代码

class Read1 extends SwingWorker<String,String>{
    protected Void doInBackground() throws Exception{
        FileReader read = new FileReader("msg.txt");
        BufferedReader in = new BufferedReader(read);
        String s;
        s=in.readLine();
        System.out.println(s);
        return s;
    }
   protected void done()
    {
      try{
       String show;
       show=get();
       textArea.append(show);}catch(Exception e){}}

 public static void main(String args[]) {
   Read1 r = new Form().new Read1();
   r.execute();

但是,它不会在UI文本区域上附加任何内容

有人有解决方案吗?谢谢


问题答案:

对我来说效果很好:

public class Reader extends SwingWorker<List<String>, String> {

    protected List<String> doInBackground() throws Exception {

        ArrayList<String> lstText = new ArrayList<String>(25);

        BufferedReader in = null;
        try {

        FileReader read = new FileReader("Scanner.txt");
        in = new BufferedReader(read);
        String s = null;

        while ((s = in.readLine()) != null) {

            lstText.add(s);
            publish(s);

        }

        } finally {


            try {

                in.close();

            } catch (Exception e) {
            }
        }

        return lstText;

    }

    @Override
    protected void process(List<String> chunks) {

        for (String text : chunks) {

            fldText.append(text + "\n");

        }

    }

    @Override
    protected void done() {
    }
}


 类似资料:
  • 此类继承自InputStreamReader类。 FileReader用于读取字符流。 该类有几个构造函数来创建所需的对象。 以下是FileReader类提供的构造函数列表。 Sr.No. 构造函数和描述 1 FileReader(File file) 给定要读取的文件,此构造函数创建一个新的FileReader。 2 FileReader(FileDescriptor fd) 在给出要读取的Fi

  • 主要内容:1 什么是Java FileReader,2 Java FileReader的语法,3 Java FileReader构造方法,4 Java FileReader的方法,5 Java FileReader的例子1 什么是Java FileReader Java FileReader类用于从文件读取数据。它以字节格式返回数据,例如FileInputStream类。 它是面向字符的类,用于Java中的文件处理。 2 Java FileReader的语法 3 Java FileReader构

  • 介绍 FileReader 对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File 或 Blob 对象指定要读取的文件或数据。 其中File对象可以是来自用户在一个<input>元素上选择文件后返回的FileList对象,也可以来自拖放操作生成的 DataTransfer对象,还可以是来自在一个HTMLCanvasElement上执行mozGetAsFil

  • 问题内容: 我似乎无法确定任何区别和另外两个被初始化的方式。使用一个或另一个有什么好处吗?其他大多数文章都介绍了vs ,但与此相反。在我看来,它们都有相同的目的。 问题答案: 首先,可以处理所有输入流,而不仅仅是文件。其他示例是网络连接,类路径资源和ZIP文件。 其次,直到Java 11不允许您指定编码,而只使用平台默认编码,这使它几乎无用,因为当代码在具有不同平台默认编码的系统上运行时,使用它会

  • File 对象继承自 Blob,并扩展了与文件系统相关的功能。 有两种方式可以获取它。 第一种,与 Blob 类似,有一个构造器: new File(fileParts, fileName, [options]) fileParts —— Blob/BufferSource/String 类型值的数组。 fileName —— 文件名字符串。 options —— 可选对象: lastModifi

  • 问题内容: 到目前为止,我的文件阅读器api代码一直运行良好,直到有一天,我从一个客户端获得了280MB的txt文件。Page只是在Chrome和Firefox中直接崩溃了,没有任何反应。 我上面想要做的是获取第一个换行符,以便我可以获取文件的列长。我不应该以文字形式阅读吗?如何在不破坏大文件页面的情况下获取文件的列长? 问题答案: 您的应用程序无法处理大文件,因为您在处理之前将整个文件读入内存。