delete.java

来自「上次小组练习做的一个学生信息管理小系统 控制台的」· Java 代码 · 共 58 行

JAVA
58
字号
package system;

import java.io.*;
import java.util.*;

public class Delete {
	static boolean isDelete = true;

	//删除某条数据
	@SuppressWarnings("unchecked")
	public void deleteData(long deleteNumber) throws IOException,
			FileNotFoundException {

		try {
			DataMap mp = new DataMap();//生成一个自己编写的容器
			long j = 0;
			String s1 = "";
			String s2 = "";
			BufferedReader in = new BufferedReader(new FileReader(
					"d:\\data.txt"));
			while ((s1 = in.readLine()) != null) {
				j = numberTokenizer(s1);
				mp.put(j, s1);
			}
			try {
				if (mp.containsKey(String.valueOf(deleteNumber).toString())) {
					mp.remove(deleteNumber);
				} else
					throw new NumberNotFoundException();
				Collection c = mp.values();
				Iterator iter = c.iterator();
				while (iter.hasNext()) {
					s1 = (String) iter.next();
					s2 += s1 + "\n";
				}
				BufferedReader in2 = new BufferedReader(new StringReader(s2));
				PrintWriter out = new PrintWriter(new BufferedWriter(
						new FileWriter("d:\\data.txt")));

				while ((s1 = in2.readLine()) != null) {
					out.println(s1);
				}
				out.close();
			} catch (NumberNotFoundException e) {
				isDelete = false;
				System.out.println(deleteNumber + " no found :(");
			}
		} catch (IOException e) {
		}
	}

	public long numberTokenizer(String s) throws IOException {
		StringTokenizer st = new StringTokenizer(s, " ");
		return Integer.valueOf((st.nextToken())).longValue();
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?