当前位置: 首页 > 知识库问答 >
问题:

使用反序列化从文本文件导入数据,但文本字段中不显示文本

舒赞
2023-03-14

我首先将数据从文本字段导出到文本文件。为此,我使用了序列化。这是密码

public void save()
{
try {
    File selectedFile = new File(ConsultantID + ".txt");
    FileOutputStream fileStream = new FileOutputStream(selectedFile);
    ObjectOutputStream oos = new ObjectOutputStream(fileStream);
    oos.writeObject(this);
} catch (IOException ex) {
    System.out.println(ex.getMessage());
}
}

private String toString(int ConsultantID) {
throw new UnsupportedOperationException("Not supported yet.");
}

要从文件中加载数据,我正在使用反序列化。下面是我使用的代码

public static Consultant load()


{

Consultant load = null;

JFileChooser chooser = new JFileChooser();
int chooserOption = chooser.showSaveDialog(null);
chooserOption = JFileChooser.APPROVE_OPTION;
try {


File file = new File (chooser.getSelectedFile().getAbsolutePath());


ObjectInputStream input = new ObjectInputStream(new     FileInputStream(file));



load = (Consultant) input.readObject();


input.close();



return load;




 } catch (IOException ex) {
System.out.println(ex.getMessage());
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
 }
 return null;

我没有错误,文件加载程序正在显示。但当我选择文件时,程序不会将数据放入文本字段。我使用以下代码创建了一个加载按钮:

Consultant consl = new Consultant();
this.jTextField1.setText(consl.getConsfirstname());
this.jTextField2.setText(consl.getConslastname());
this.jTextField3.setText(consl.getConsultantID());
consl.load()

你认为我在代码中遗漏了什么吗?

共有1个答案

蒋航
2023-03-14

有几件事。

  • 在加载数据之前,您似乎设置了标签的文本。
  • 加载数据,然后丢弃返回的对象

我建议您先加载数据,然后使用load()函数返回的对象来设置值。

 类似资料:
  • 我的文本文件包含的数据为:sample。txt 内存头1 1 NA设置字符串SRC代码 MEMHEAD 1 2 NA设置字符串memIdnum LGLNAME 1 5 NA先设置字符串 我已经创建了MyClassModel类,将AbstractTableModel扩展为: 通过这种方式,我从文件中检索数据。现在当我制作一个并使用。我得到一个。 继续: 文本文件数据显示在JTable中,但是JTab

  • 我目前正在尝试构建一个行为类似于命令shell的应用程序。我想显示我给它的路径(或' 我这样做是为了在用户提交文本时文本字段会被清空。提交后,它将字段的文本设置为我的路径,以达到类似的效果,但用户仍然可以在输入文本时删除该路径。 如何使我的路径文本显示在字段中,但用户无法删除它? 我已经尝试过这个,但它只在提交后更新插入符号位置:

  • 我对Java非常陌生,因此遇到了很大的困难。这是我想做的,但似乎不太奏效。 请看附上的Java代码和文本文件(截图在链接)。 文本文件:

  • 我对JavaFX和JavaFX Scene Builder是新手,几个星期以来一直在研究并试图弄清楚如何简单地从文本文件中读取并在文本中显示其内容。我的controller类中有一个很好的文件读取功能,但我不知道如何将文本文件显示到fxml文档中的文本区域。我已经学会了如何单击按钮并使文件显示在文本区域中,但我希望GUI加载后立即在文本区域中显示内容。如果任何人有一个想法如何去做这件事,你的帮助将

  • 我是否需要在 iReport 设计器中配置某些内容??我错过了什么吗??

  • 解决了。 我在另一个类中初始化我的产品列表: 我想做的是,在构造函数中初始化我的产品列表,如下所示: 这是我的方法,它将对象列表写入。json文件: 我在成员的帮助下找到的解决方案: 和构造函数: