在日常编程中,我们经常会需要处理一些具体类型的文件,如属性文件、CSV、Excel、HTML和压缩文件,直接使用上一章介绍的方式来处理一般是很不方便的。一些第三方的类库基于之前介绍的技术提供了更为方便易用的接口,本章会简要介绍这几种文件类型的处理。上一章介绍了字节流和字符流,它们都是以流的方式读写文件,流的方式有几个限制:
1)要么读,要么写,不能同时读和写。
2)不能随机读写,只能从头读到尾,且不能重复读,虽然通过缓冲可以实现部分重读,但是有限制。
Java的标准序列化机制有一些重要的限制,而且不能跨语言,实践中经常使用一些替代方案,比如ⅩML/JSON/MessagePack。Java SDK中对这些格式的支持有限,有很多第三方的类库提供了更为方便的支持,Jackson是其中一种,它支持多种格式。
网友评论