java 课程设计 学生成绩管理系统代码.docx

上传人:b****5 文档编号:8798407 上传时间:2023-05-15 格式:DOCX 页数:18 大小:18.21KB
下载 相关 举报
java 课程设计 学生成绩管理系统代码.docx_第1页
第1页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第2页
第2页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第3页
第3页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第4页
第4页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第5页
第5页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第6页
第6页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第7页
第7页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第8页
第8页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第9页
第9页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第10页
第10页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第11页
第11页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第12页
第12页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第13页
第13页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第14页
第14页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第15页
第15页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第16页
第16页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第17页
第17页 / 共18页
java 课程设计 学生成绩管理系统代码.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

java 课程设计 学生成绩管理系统代码.docx

《java 课程设计 学生成绩管理系统代码.docx》由会员分享,可在线阅读,更多相关《java 课程设计 学生成绩管理系统代码.docx(18页珍藏版)》请在冰点文库上搜索。

java 课程设计 学生成绩管理系统代码.docx

java课程设计学生成绩管理系统代码

我写的Java学生成绩管理系统源代码

发布时间:

2006.03.0916:

38来源:

CSDN作者:

importjava.io.BufferedReader;

importjava.io.BufferedWriter;

importjava.io.File;

importjava.io.FileNotFoundException;

importjava.io.FileReader;

importjava.io.FileWriter;

importjava.io.IOException;

importjava.io.InputStreamReader;

importjava.io.PrintWriter;

importjava.io.StringReader;

importjava.util.ArrayList;

importjava.util.Collection;

importjava.util.Collections;

importjava.util.HashMap;

importjava.util.Iterator;

importjava.util.StringTokenizer;

/*

*Createdon2005-1-11

*/

/**

*@author让炜

*@since1.0

*

*TODO学生成绩管理系统

*通过学号查找,修改,删除数据

*

*/

publicclassLittleProgram

{

staticbooleanisDelete=true;

staticbooleanisFind=true;

publicstaticvoidmain(String[]args)//主方法,程序从这里开始运行

throwsIOException,NumberNotFoundException

{

intchoice=-1;

do{

LittleProgramlp=newLittleProgram();

System.out.println();

System.out.println("\t####################################");

System.out.println();

System.out.println("\t\tJava学生成绩管理系统1.1");

System.out.println("\t\t请用学号查找,修改,删除数据");

System.out.println();

System.out.println("\t####################################\n");

System.out.print("1.增加数据:

\n"+

"2.查找数据:

\n"+

"3.删除数据:

\n"+

"4.清除所有数据:

\n"+

"5.把数据全部打印到屏幕\n"+

"6.把成绩按学号排序\n"+

"7.修改数据\n"+

"8.统计已记录成绩学生数\n"+

"9.关于作者\n"+

"0.退出程序.\n"+

"输入:

");

BufferedReaderin=//从终

newBufferedReader(//端接

newInputStreamReader(System.in));//收数

StringinputLine=in.readLine();//字选

choice=Integer.valueOf(inputLine).intValue();//项;

switch(choice)

{

case1:

{//1.增加数据

Stringstr=lp.inputData();

lp.addData(str);

System.out.println("增加数据成功.");

timeOut

(1);

}break;

case2:

{//2.查找数据

longfind=0;

System.out.print("请输入你要查找的学生学号:

");

BufferedReaderinn=

newBufferedReader(

newInputStreamReader(System.in));

StringinputLi=inn.readLine();

find=Integer.valueOf(inputLi).longValue();

lp.findData(find);

timeOut

(2);

}break;

case3:

{//3.删除数据

longdeleteNumber=0;

System.out.print("请输入你想删除的同学的学号:

");

BufferedReaderbf=

newBufferedReader(

newInputStreamReader(System.in));

StringinputL=bf.readLine();

deleteNumber=Integer.valueOf(inputL).longValue();

lp.deleteData(deleteNumber);

if(isDelete)

System.out.println("删除数据成功!

");

timeOut

(1);

}break;

case4:

{

lp.clearData();//4.清除所有数据

timeOut

(1);

}break;

case5:

{

print();//5.把数据全部打印到屏幕

timeOut

(2);

}break;

case6:

{

lp.numSort();//6.把成绩按学号排序

System.out.println("按照学号从小到大排序成功!

\n"+

"排序后:

\n");

print();

timeOut

(2);

}break;

case7:

{

lp.rewrite();//7.修改数据

timeOut

(2);

}break;

case8:

{

intcount=lp.count();

System.out.println("共有"+count+"个学生已经记录.");

timeOut

(2);

}break;

case9:

{

System.out.print("\t\t让炜\n"+

"\t\t上海电力学院通信工程系\n"+

"\t\tQQ:

254482170\n");

timeOut(4);

}break;

}while(choice!

=0);

System.out.println("Bye!

^-^");

System.exit(0);

}

publicStringinputData()//从终端接收数据的方法,返回字符串

throwsIOException,NumberFormatException

{

System.out.print("请依次输入:

学号姓名性别成绩\n"+

"每项数据请用空格隔开:

");

Stringall="";

try{

BufferedReaderin=//从终

newBufferedReader(//端接

newInputStreamReader(System.in));//收数

StringinputLine=in.readLine();//据

StringTokenizerstr=

newStringTokenizer(inputLine,"");//接收的数据用空格隔开,这个类用来提取每个字符串

longnum=Integer.valueOf(str.nextToken()).longValue();//学号

Stringname=(String)str.nextToken();//姓名

Stringsex=(String)str.nextToken();//性别

doublemark=Integer.valueOf(str.nextToken()).doubleValue();//分数

all=String.valueOf(num)+","+

name+","+

sex+","+

String.valueOf(mark);//把所有的数据用","隔开然后在连起来放进字符串all

}catch(IOExceptione){}

catch(NumberFormatExceptione){}

returnall;//返回字符串all

}

publicvoidaddData(Stringstr)//增加数据的方法

throwsIOException

{

Strings1="",s2="",s3="";

Filefile=newFile("data.txt");

if(file.exists())//如果文件data.txt存在

{

try{

BufferedReaderin=

newBufferedReader(

newFileReader("data.txt"));

while((s1=in.readLine())!

=null)

s2+=s1+"\n";//把文件中的每行数据全部放进一个字符串s2

s2+=str+"\n";//再把s2于形参str相连放进s2

BufferedReaderin2=//把字符

newBufferedReader(//串s2也

newStringReader(s2));//就是原

PrintWriterout=//文件+

newPrintWriter(//形参str(新输入的一行数据)

newBufferedWriter(//重新写进data.txt

newFileWriter("data.txt")));//覆盖原来的数据

while((s3=in2.readLine())!

=null)

{

out.println(s3);

}

out.close();

//System.out.println("writedatatrue.");

}catch(IOExceptione){}

}else{

System.err.println("File\"data\"Missing!

");

}

}

publicvoidclearData()//清除data.txt的所有数据的方法

throwsIOException

{

Filefile=newFile("data.txt");

if(file.exists())//如果文件在

{

try{

PrintWriterout=

newPrintWriter(

newBufferedWriter(

newFileWriter(file)));

out.print("");//在文件data.txt里写进一个空字符,所以清除了原来的内容

out.close();//关闭文件

System.out.println("cleardatatrue!

");

}catch(IOExceptione){}

}else{

System.err.println("File\"data\"Missing!

");

}

}

publicvoiddeleteData(longdeleteNumber)//删除某条数据

throwsIOException,FileNotFoundException

{

isDelete=true;

try{

DataMapmp=newDataMap();//生成一个自己编写的容器

longj=0;

Strings1="",s2="",s3="";

BufferedReaderin=

newBufferedReader(

newFileReader("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

thrownewNumberNotFoundException();

Collectionc=mp.values();

Iteratoriter=c.iterator();

while(iter.hasNext())

{

s1=(String)iter.next();

s3+=s1+"\n";

}

BufferedReaderin2=

newBufferedReader(

newStringReader(s3));

PrintWriterout=

newPrintWriter(

newBufferedWriter(

newFileWriter("data.txt")));

//System.out.println("deleteNo"+deleteNumber);

while((s1=in2.readLine())!

=null)

{

out.println(s1);

}

out.close();

}catch(NumberNotFoundExceptione)

{

isDelete=false;

System.out.println(deleteNumber+"nofound:

(");

}

}catch(IOExceptione){}

}

publiclongnumberTokenizer(Strings)

throwsIOException

{

StringTokenizerst=

newStringTokenizer(s,"");

returnInteger.valueOf((st.nextToken())).longValue();

}

publicvoidfindData(longfind)//查找数据

throwsIOException,NumberNotFoundException

{

isFind=true;

Strings="",findString="";

longi;

DataMapdm=newDataMap();

BufferedReaderin=

newBufferedReader(

newFileReader("data.txt"));

while((s=in.readLine())!

=null)

{

i=numberTokenizer(s);

dm.put(i,s);

}

//in.close();

try{

if(dm.containsKey(String.valueOf(find).toString()))

{

findString=dm.get(find);

System.out.println("学号"+find+"学生的资料是:

");

System.out.println(findString);

}else

thrownewNumberNotFoundException();

}catch(NumberNotFoundExceptione){

System.out.println(find+"nofound:

(");

isFind=false;

}

}

publicstaticvoidprint()//读取文本文件把数据打印到终端的方法

throwsIOException

{

try{

BufferedReaderin=

newBufferedReader(

newFileReader("data.txt"));

Stringread="";

while((read=in.readLine())!

=null)

System.out.println(read);

}catch(IOExceptione){}

}

publicstaticvoidtimeOut(doublesec)//停顿短暂时间的一个方法完全可以不要这个功能

{

doubleseconds=sec;

longt=System.currentTimeMillis()+(int)(seconds*1000);

while((System.currentTimeMillis())

;

}

publicvoidnumSort()//按学号排序

throwsIOException

{

longi=0;

Strings="";

try{

DataArrayListdal=newDataArrayList();

BufferedReaderin=

newBufferedReader(

newFileReader("data.txt"));

while((s=in.readLine())!

=null)

{

i=numberTokenizer(s);

dal.add(i);

}

Collections.sort(dal);

DataMapdm=newDataMap();

BufferedReaderin2=

newBufferedReader(

newFileReader("data.txt"));

while((s=in2.readLine())!

=null)

{

i=numberTokenizer(s);

dm.put(i,s);

}

PrintWriterout=

newPrintWriter(

newBufferedWriter(

newFileWriter("data.txt")));

Iteratorit=dal.iterator();

longtemp=0;

StringtempStr="";

while(it.hasNext())

{

temp=Integer.valueOf((String)it.next()).longValue();

tempStr=dm.get(temp);

out.println(tempStr);

}

out.close();

}catch(IOExceptione){}

}

publicvoidrewrite()

throwsIOException,NumberNotFoundException

{

try{

System.out.print("请输入你要修改的学生学号:

");

BufferedReaderin=

newBufferedReader(

newInputStreamReader(System.in));

StringinputLine=in.readLine();

longnum=Integer.valueOf(inputLine).longValue();

findData(num);

if(isFind)

{

deleteData(num);

System.out.print("请重新输入该学生的资料:

");

Stringstr=inputData();

addData(str);

System.out.println("rewritetrue!

");

}

}catch(IOExceptione){}

catch(NumberNotFoundExceptione){}

}

publicintcount()

throwsIOException

{

DataArrayListdal=newDataArrayList();

try{

Strings="";

longi=0;

BufferedReaderin=

newBufferedReader(

newFileReader("data.txt"));

while((s=in.readLine())!

=null)

{

i=numberTokenizer(s);

dal.add(i);

}

}catch(IOExceptione){}

returndal.size();

}

}

/*

*

*@authorRangWei

*TODO这是个我们写的一个容器,继承公共类HashMap

*大概的功能就相当一个数组

*

*/

classDataMapextendsHashMap//一个存储数据的Map

{

publicvoidput(longi,Stringstr)//把学号和数据放进这个Map

{//以后一个学号(key)对应的是一个人的数据(value)

put(String.valueOf(i).toString(),str);

}

publicvoidremove(longi)//接收学号,然后删除学号(key)和它对应的数据(value)

{

remove(String.valueOf(i).toString().toString());

}

publicStringget(longi)//接收一个学号,然后返回这个key对应的value

{

Strings=String.valueOf(i).toString();

if(!

containsKey(s))

{

System.err.println("NotfoundKey:

"+s);

}

return(String)get(s);

}

}

/*

*

*@authorRangWei

*

*TODO这个类继承ArrayList

*用来按数字排序,在用学号排序时要用到它

*

*/

classDataArrayListextendsArrayLis

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 国外设计风格

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2