1. 字符读取(一次读若干个数据)
FileReader reader = new FileReader(file); char buf[] = new char[1024]; int ch; while ((ch = reader.read(buf)) != -1) { buffer.append(buf); buf = new char[1024]; // 一定要清掉啊 } System.out.println(buffer.toString());
2. 字符读取(一次读一个字符)
FileReader reader = new FileReader(file); int ch; while ((ch = reader.read()) != -1) { buffer.append((char) ch); } System.out.println(buffer.toString());
3. 字符读取(一行一行地读)
BufferedReader reader = null; String data; InputStreamReader isr = new InputStreamReader( new FileInputStream(file), "GB2312"); reader = new BufferedReader(isr); while ((data = reader.readLine()) != null) { buffer.append(data); } reader.close(); System.out.println(buffer);
4. 字节读取(一次读完)
FileInputStream in = new FileInputStream(file); int size = in.available(); byte[] data = new byte[size]; in.read(data); in.close(); String str = new String(data, "GB2312"); System.out.println(str);
5. 字节读取(一次读一个字节)
FileInputStream in = new FileInputStream(file); int data; while ((data = in.read()) != -1) { buffer.append((char) data); } System.out.println(buffer.toString());
6. 字节读取(一次读若干个字节)
FileInputStream in = new FileInputStream(file); byte buf[] = new byte[1024]; while (in.read(buf) != -1) { buffer.append(new String(buf, "GB2312")); buf = new byte[1024]; } System.out.println(buffer.toString());