0
我试图做的确切的事情是一个叫NUM二维数组保存到一个名为savedNumbers.data文件I/O。这里是保存到.data文件的代码:爪哇 - 具体文件,对象
private void saveBtnActionPerformed(java.awt.event.ActionEvent evt) {
num[0][0] = Integer.parseInt(line00Tf.getText());
num[0][1] = Integer.parseInt(line01Tf.getText());
num[0][2] = Integer.parseInt(line02Tf.getText());
num[0][3] = Integer.parseInt(line03Tf.getText());
num[0][4] = Integer.parseInt(line04Tf.getText());
num[1][0] = Integer.parseInt(line10Tf.getText());
num[1][1] = Integer.parseInt(line11Tf.getText());
num[1][2] = Integer.parseInt(line12Tf.getText());
num[1][3] = Integer.parseInt(line13Tf.getText());
num[1][4] = Integer.parseInt(line14Tf.getText());
num[2][0] = Integer.parseInt(line20Tf.getText());
num[2][1] = Integer.parseInt(line21Tf.getText());
num[2][2] = Integer.parseInt(line22Tf.getText());
num[2][3] = Integer.parseInt(line23Tf.getText());
num[2][4] = Integer.parseInt(line24Tf.getText());
File outFile;
FileOutputStream fStream;
ObjectOutputStream oStream;
try {
outFile = new File("savedNumbers.data");
fStream = new FileOutputStream(outFile);
oStream = new ObjectOutputStream(fStream);
oStream.writeObject(num[0]);
oStream.writeObject(num[1]);
oStream.writeObject(num[2]);
JOptionPane.showMessageDialog(null, "File saved OK");
oStream.close();
} catch (IOException e) {
System.out.println("Error writing to file: " + e);
}
}
该代码似乎运行良好。
现在我想在JOptionPane中一次查看所有相同的数字,所以会显示三行保存的数字,然后按下OK,另外三行保存的数字将显示,直到没有更多。我有从savednumbers.data 调用数问题
下面是该代码:
//CODE FOR CALLING num FROM savedNums.data
private void showSavedNumsBtnActionPerformed(java.awt.event.ActionEvent evt) {
File inFile;
FileInputStream fStream;
ObjectInputStream oStream;
try{
inFile = new File("savedNumbers.data");
fStream = new FileInputStream(inFile);
oStream = new ObjectInputStream(fStream);
ArrayList <LottoPhase1> numList;
numList = (ArrayList<LottoPhase1>)oStream.readObject(); //THIS LINE HAVING PROBLEMS WITH
for(LottoPhase1 ph1:numList){
JOptionPane.showMessageDialog(null,
"Saved numbers " +
"Numbers: " + Arrays.toString(ph1.getNum())
);
}
oStream.close();
}
catch(IOException | ClassNotFoundException e){
JOptionPane.showMessageDialog(null, "Error: " + e);
}
我也打过电话ArrayList中NUM,numList,ALIST和既不工作。 类LottoPhase1被创建并没有错误运行,并且完全调试。