1、操作流时,如果文件不存在会出现什么情况?
文件流操作时,如果文件不存在,读取流会抛出FileNotFoundException异常,写入流会创建新文件。
2、操作流时,如果流不关闭会出现什么情况?
流操作完毕后,必须关闭流。如果不关闭流,那么不会释放流操作时占用的资源,而且写入流有可能写不进数据。
3、如何判断一个文件是否存在?如何创建一个目录?如何知道一个目录中有多少文件?
File f1 = newFile("ceshi.txt");
//判断文件或目录是否存在
boolean bn = f1.exists();
File f3 = newFile("c:/img3");
if(f3.exists() == false){
//创建新目录
f3.mkdir();
}
File f4 = newFile("C:/Ruijie/Product-Configure-Management");
//得到一个目录中所有的文件和子目录,但不包含子目录中的文件
File[] fs =f4.listFiles();
//得到数组的长度即目录中的文件数
int ab = fs.length;
System.out.println(ab);
4、什么是对象序列化?如何实现对象序列化?
当需要传输对象时,由于对象中封装了很多属性和方法,数据量庞大。所以在传输对象前,需要将对象打散成字节序列,以便传输。这个过程叫对象序列化。如果需要将一对象进行传输,那该对象必须实现java.io.serializable接口。
5、什么是XML?XML声明是怎样的?XML注释是怎样的?
xml:可扩展的标记语言。以标记和子标记来描述对象及其属性的。xml声明由以下几个部分组成:1、version -- 文档符合XML1.0规范,现在只有1.0;2、encoding -- 编码格式,只能用一种。注释的格式如:<!--声明-->,但不能嵌套;不能写成<!--声明<!--声明-->-->。
6、一个格式良好的XML有哪些规定?
语法规范:
--必须有XML声明语句
--必须有且仅有一个根元素
--标记大小写敏感
--属性值用引号
--标记成对
--空标记关闭<a/><a></a>
--元素正确嵌套
7、格式良好的XML和有效的XML有什么区别?
格式良好的XML文档:要满足XML基本的语法规则。如果XML文档不是格式良好的,就不能被应用程序和浏览器正确识别和解析。
有效的XML文档:除了必须满足XML基本语法规范之外,还必须符合DTD和Schema定义元素规则。
8、DOM和SAX有什么区别?
DOM解析:
1、基于树状结构的API
2、整个XML文档必须在内存中解析和存储
3、客户端应用程序就可以随机访问这些对象
4、大型文档则会造成内存紧张
SAX解析:
1、SAX提供一种用于解析XML文档的事件驱动模型
2、使用回调机制将事件通知应用程序
特点:
1、不必将整个文件加载到内存中,占用的内存少
2、不能对文档进行随机访问
3、SAX是只读的
4、文档只能遍历一次