用Java编写的一个日志录入和查找但查找不出来,帮忙看看为什么?

来源:百度知道 编辑:UC知道 时间:2024/05/29 04:23:37
日志类
import java.io.*;
public class Dx implements Serializable {
public String zhu;
public String mz;
public String nr;
public Dx(String s1,String s2,String s3)
{
zhu=s1;mz=s2;nr=s3;
}
public Dx(){}

}

查询
import java.awt.*;
import java.awt.event.*;
import java.io.*;
class MyFrame extends Frame implements ActionListener
{
Label l1,l2;
TextField t1,t2;
TextArea ta;
Panel p1,p2,p3,p4;
Button b1;
String st1,st2,st3;
public MyFrame(String zt){
super(zt);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)
{dispose();System.exit(0);}
});
setSize(400,300);
setVisible(true);
setBackground(Color.LIGHT_GRAY);
setLayout(new GridLayout(3,1));
l1=new Label("姓名");
t1=new TextField

我遇见过类似的问题,就是ObjectInputStream ois只能读一次性写入的对象,比如说ObjectOutputStream分两次追加写入一个文件,ois只能读第一次的。或者是文件被损坏了。
建议你在命令行运行,看看什么异常。或者把异常弹出界面看看。
最好就是你写入日志的时候不要用Object这个,你可以重新日志类的toString,用BufferedWriter 写。
如果你不想记事本看到,可以加密,反而你用Object这个倒是瞒不了高手。
还有就是先写核心代码,像那个读取文件那个,核心代码确定没问题了在扩充性的写界面,日后测试的时候测试核心代码就行了,要不一次性写这么庞大就有点乱了。

/*
* 将对象写入文件
* */

package com.log;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class Test {

public static void main(String[] args) {

try {
ObjectOutputStream data = new ObjectOutputStream(
new FileOutputStream("com/log/t1.txt",true));
/**
* zhu=aaa 日志主题
* nr=ccc
* mz=bbb 姓名
* */
data.writeObject(new Dx("aaa","bbb","ccc"));
data.close();
} catch (FileNotFo