- 编程实现:复制文件pic1.jpg,文件名为pic1_bak.jpg。
public class FilePic {
public static void main(String[] args) throws IOException {
try (FileInputStream fi = new FileInputStream("C:\\Users\\EffortfulGirl\\Pictures\\Saved Pictures\\pic1.jpg");
FileOutputStream fo = new FileOutputStream("pic1_bak.jpg");
)
{
byte[] b = new byte[fi.available()];//available()方法来获取还有多少字节可以读取,根据该数值创建固定大小的byte数组,从而读取输入流的信息。
fi.read(b);
fo.write(b);
System.out.println("文件已经复制");
}
}
}
- 编程实现:使用Java语言提供的的输入、输出处理功能将一个文本文件的内容按行读出,每读出一行就顺序添加行号,并输出到控制台。从控制台输入文件名称。
public class Filescanner {
public static void main(String[] args) throws Exception{
Scanner reader = new Scanner(System.in);
String fileName = reader.nextLine();
File f = new File("C:\\"+fileName);
Scanner fi = new Scanner(f);
//输出:
String sLine = null;
int index = 0;
while(fi.hasNext()) {
sLine = fi.nextLine();
System.out.println(++index + " " + sLine);
}
}
}
- 编程实现:先利用DataOutputStream类将随机生成的100个分数(0~100之间的整数)写入文件score.dat中,然后利用DataInputStream类读出第n(从键盘输入)个分数输出到控制台。
import java.io.*;
import java.util.Scanner;
import java.lang.*;
public class Main {
static int Num = 100;
public static void main(String[] args) throws Exception {
DataOutputStream dos = null;
File f = new File("score.dat");
dos = new DataOutputStream(new FileOutputStream(f));
int num[] = new int[Num];
for (int i = 0; i < num.length; i++) {
double d = Math.random();
int t = (int) (d * 100);
dos.writeChar(t);
}
dos.close();
DataInputStream dis = null;
dis = new DataInputStream(new FileInputStream(f));
Scanner reader = new Scanner(System.in);
int n = reader.nextInt();
int t[] = new int[Num];
int len = 0;
int c = 0;
int flag = 0;
while (true) {
c = dis.readChar();
t[len] = c;
System.out.print(t[len] + "\t");
if (len == t.length - 1) break;
len++;
// 制表
flag++;
flag %= 10;
if (flag == 0) System.out.println();
}
System.out.println("\n第" + n + "个数为" + t[n - 1]);
}
}
5. 使用ObjectInputStream和ObjectOutputStream类编程实现一个简易学籍管理程序。每条学籍信息至少包含:学号、姓名、性别、班级、专业、出生日期,学号前4位代表入学年份,要求能实现添加、删除、查找和修改等功能。
5.(选做)使用RandomAccessFile类编程实现一个简易通讯录管理程序。每条信息至少包含:姓名、性别、手机号。能实现添加和查找功能。