我在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中直接崩溃了,没有任何反应。 我上面想要做的是获取第一个换行符,以便我可以获取文件的列长。我不应该以文字形式阅读吗?如何在不破坏大文件页面的情况下获取文件的列长? 问题答案: 您的应用程序无法处理大文件,因为您在处理之前将整个文件读入内存。