- 目录和文件操作
关键考点:
File类的概念。
如何用File类看来操作目录和文件。
答案:
Java提供了java.io.File类对目录和文件进行操作。主要的操作方法包括:路径字符串构造方法、isDirectory、isFile、createNewFile、list、getName、delete。
- 写一个复制文件的程序
关键考点:
InputStream的使用方法。
OutputStream的使用方法。
答案:
本题目的设计思路可以有以下几个步骤。
- 用被复制文件的路径创建一个InputStream对象。
- 用复制文件的新路径创建一个OutputStream对象。
- 用read()方法循环把数据读出到一个byte数组中,直到读出数据的长度小于0。
- 用write()方法把byte数组中的字节写入输出流。
- 最后关闭输入流和输出流。
- 如何使用随机存取文件RandomAccessFile类
关键考点:
RandomAccessFile的用法。
答案:
RandomAccessFile的使用思路主要包括以下一些项目:
- 用length()方法获取文件的内容长度。
- 用seek()方法随机的到达任何需要存取数据的地方。
- 调用read()方法获取当前位置的数据,用write()方法写入数据。
- 完成需要以后,调用close()关闭文件的打开。
- 字节流的处理方式
关键考点:
流的概念。
如何使用字节流。
答案:
字节流处理的是计算机最基本的单位byte,他可以处理任何数据格式的数据。主要操作对象就是byte数组,通过read()和write()方法把byte数组中的数据写入或读出。
- 字符流的处理方式
关键考点:
字符流的概念。
字符流的使用方法。
答案:
字符流是由字节流包装而来,它的输入和输出流类型包括StringReader和StringWriter、BufferedReader和BufferedWriter。字符流API的基本使用思路有以下步骤:
- 获取输入或输出流对象。可以从File得到,也可以从网络或其他地方得到。
- 根据特定的字符格式创建InputStreamReader或InputStreamWriter对象。
- 使用read()或readLine()方法,得到数据。或使用write()或print()方法进行字符输出。
- 最后关闭reader或writer。
- 什么是序列化
关键考点:
序列化的概念。
答案:
序列化本质上就是把对象内存中的数据按照一定的规则,变成一些列的字节数据,然后再把这些字节数据写入到流中。而反序列化的过程相反,先读取字节数据,然后再重新组装成Java对象。
所有需要进行序列化的类,都必须实现Serializable接口,必要时还需要提供静态的常量serialVersionUID。
- 如何序列化和反序列化一个Java对象
关键考点:
序列化的概念和用法
ObjectOutputStream和ObjectInputStream的使用方法。
答案:
对于对象的输出和输入,Java的I/O体系中主要提供了ObjectOutputStream和ObjectInputStream两个类以供开发者使用,他们的基本使用思路有以下步骤。
- 让需要序列化的类实现java.io.Serializable接口。
- 提供静态的long型的常量serialVersionUID。
- 如果是序列化对象,则用一个输出流创建一个ObjectOutputStream对象,然后调用writeObject()方法。
- 如果是反序列化,首先使用一个输入流创建一个ObjectInputStream对象。然后调用readObject()方法,得到一个Object类型的对象。最后再做类型的强制转换。
- 最后关闭流。