3 public class read_trace
{
4 public static void main(String
[] args
) {
8 FileInputStream file_input
= new FileInputStream ("../trace.dat");
9 BufferedInputStream buffered_input
= new BufferedInputStream(file_input
);
10 DataInputStream data_input
= new DataInputStream (buffered_input
);
17 timestamp
= data_input
.readInt();
18 id
= data_input
.readShort();
19 length
= data_input
.readByte();
21 byte[] buf
= new byte[length
];
22 data_input
.readFully(buf
, 0, length
);
25 ByteArrayInputStream eargs
= new ByteArrayInputStream(buf
);
26 DataInputStream eargs_data
= new DataInputStream (eargs
);
28 /* read arg 1 (short) */
29 short arg1
= eargs_data
.readShort();
31 /* read arg 2 (string) */
32 eargs_data
.mark(10000);
34 while(eargs_data
.readByte() != 0)
37 byte[] arg2
= new byte[strlen
];
38 eargs_data
.readFully(arg2
, 0, strlen
);
40 if(args
.length
>0 && args
[0].equals("-p"))
41 System
.out
.printf("timestamp %d id %d args=(short=%d string=\"%s\") %n", timestamp
, id
, arg1
, new String(arg2
));
45 catch(IOException e
) {
46 //System.out.println ("IO exception = " + e );
47 //e.printStackTrace();