public class Employee {
String name;
int age;
public static final int LENG = 8;
public Employee(String name, int age)
{
if(name.length() > LENG)//规定字符串长度,若实际长度大于预设长度,则截取前面的8个字节
{
name = name.substring(0, LENG);
}
else
{
while(name.length() < LENG)//若实际长度小于预设长度,则填补
name = name + "\u0000";
}
this.name = name;
this.age = age;
}
}  
import java.io.*;
public class RandomFileTest { /**
 * @param args
 * 要实现的功能是:运用RandomAccessFile类中的write和read方法输入三个员工的信息到自定义文件中,再从该 文件中读取
 */
public static void main(String[] args) throws Exception
{
// TODO Auto-generated method stub
Employee e1 = new Employee("张三",23);
Employee e2 = new Employee("李四",24);
Employee e3 = new Employee("王五",25);
RandomAccessFile ra = null;
ra = new RandomAccessFile("Employee.txt","rw");
ra.write(e1.name.getBytes());
ra.write(e1.age);
ra.write(e2.name.getBytes());
ra.write(e2.age);
ra.write(e3.name.getBytes());
ra.write(e3.age);
ra.close();

int length = 0;
byte [] buf = new byte[8];
RandomAccessFile raf = null;
raf = new RandomAccessFile("Employee.txt","r");
raf.skipBytes(9);
length = raf.read(buf);
String strName = new String(buf,0,length);
System.out.println(strName + ":" + raf.read());
raf.seek(0);
length = raf.read(buf);
strName = new String(buf,0,length);
System.out.println(strName + ":" + raf.read());
raf.skipBytes(9);
length = raf.read(buf);
strName = new String(buf,0,length);
System.out.println(strName + ":" + raf.read());
raf.close();
}
}
我用的是Eclipse编译工具,这段代码是看张孝祥的视频里的代码,不过他用的工具是JCreator,他在命令行里才执行出来的,而我在命令行里也得到乱码,到底是哪出错了,请求帮助!!!!!!!!!!!!!