我在用 DTD 的 read(DataInputStream in) 构建一个DTD时,出现错误,代码与错误如下:import java.io.*;
import javax.swing.text.html.parser.DTD;
import org.jdom.input.*;public class NewMain {
public NewMain() {
}
public static void main(String[] args){
File f = new File("Radio.dtd");
DTD dd = null;
Dtd123 dd123 = new Dtd123("Radio");
try {
dd = dd123.getDTD("Radio");
} catch (IOException ex) {
ex.printStackTrace();
}
try {
InputStream fis = new FileInputStream(f);
DataInputStream dis = new DataInputStream(fis);
dd.read(dis);
System.out.print(dd);
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
}
static class Dtd123 extends DTD{
DTD aa;
Dtd123(String a){
super(a);
}
}
}
出现错误提示:
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:178)
at java.io.DataInputStream.readUTF(DataInputStream.java:565)
at java.io.DataInputStream.readUTF(DataInputStream.java:522)
at javax.swing.text.html.parser.DTD.read(DTD.java:344)
at NewMain.main(NewMain.java:26)编译没问题,但是不可以运行,不知道为什么,谢谢各位!!!