⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ss.txt

📁 这是一基于JAVA程序的学生管理系统
💻 TXT
字号:
using System;
using System.Xml;

namespace EzoneMgrSys
{
class MgrSysClass
{
//文档对象模型(DOM),这是核心对象!
public static XmlDocument MyDoc;

[STAThread]
public static void Main(string[] args)
{
//初始化对象模型
MyDoc=new XmlDocument();
System.out.println("正在加载 EzoneInfo.xml 文件......");
//加载XML文件到文档对象模型(DOM)中
MyDoc.Load("..\\..\\EzoneInfo.xml"); //注意文件位置
System.out.println("DOM(Data Object Modal)数据对象模型在内存中创建完毕!");
//保存用户输入的命令字符串
string Command=string.Empty;
//打印菜单
PrintMenu();
while(true)
{
Command=Console.ReadLine();
int i=0;
try
{
//如果用户没有输入数字,则这里的转换*作会抛出一个异常!
i=int.Parse(Command);
}
catch
{
PrintMenu();
continue;
}
switch(i)
{
case 1:
//查看所有学员信息
MgrSysClass.DisplayAll();
break;
case 2:
//插入新学员信息
MgrSysClass.InsertModule();
break;
case 3:
//更新学员信息
MgrSysClass.UpdateModule();
break;
case 4:
//删除学员信息
MgrSysClass.DeleteModule();
break;
case 5:
//退出系统
goto CloseLabel;
default:
System.out.println("输入错误命令!");
break;
}
PrintMenu();
}
CloseLabel:
System.out.println("正在读取内存中DOM对象,准备向 EzoneInfo.xml 文件更新数据......");
//保存XML文件
MgrSysClass.MyDoc.Save("..\\..\\EzoneInfo.xml");
System.out.println("文件保存完毕!");
System.out.println("程序正常退出!");
//系统信息
MgrSysClass.SystemAbout();
System.out.println("按任意键退出.....");
}

/// <summary>
/// 打印菜单模块
/// </summary>
public static void PrintMenu()
{
System.out.println(" __________________________________________________________ ");
System.out.println("|______________ 亿众国际 学生管理系统(精简版) _____________|");
System.out.println("| |");
System.out.println("| 1.查看信息 |");
System.out.println("| 2.插入信息 |"); 
System.out.println("| 3.修改信息 |");
System.out.println("| 4.删除信息 |");
System.out.println("| 5.退出系统 |");
System.out.println("|----------------------------------------------------------|");
System.out.println("| 注:只有正常退出,才能保证将内存中数据保存到 XML 文件! |");
System.out.println(" ---------------------------------------------------------- ");
System.out.println("命令:");
}

/// <summary>
/// 插入新学员信息模块
/// </summary>
public static void InsertModule()
{
//保存用户的输入
MyLabel1:System.out.println("请输入你的姓名:");
string name=Console.ReadLine();
if(name.Trim()==string.Empty)
goto MyLabel1;
MyLabel2:System.out.println("请输入你的性别:");
string sex=Console.ReadLine();
if(sex.Trim()==string.Empty)
goto MyLabel2;
MyLabel3:System.out.println("请输入你的出生日期:");
string birthday=Console.ReadLine();
if(birthday.Trim()==string.Empty)
goto MyLabel3;
MyLabel4:System.out.println("请输入你的班级:");
string classid=Console.ReadLine();
if(classid.Trim()==string.Empty)
goto MyLabel4;
//创建当前DOM对象的代码片段
XmlDocumentFragment MyDocFrag=MyDoc.CreateDocumentFragment();
//获得具有[学号流水号]属性的[班级]节点
XmlNode MyNode=MyDoc.SelectSingleNode("//班级[@学号流水号]");
//获取当前[学号流水号]的值
int StuId=int.Parse(MyNode.Attributes["学号流水号"].Value);
//修改[学号流水号]
StuId++;
MyNode.Attributes["学号流水号"].Value=StuId.ToString();

//创建一个<学员>节点
XmlElement MyElementRoot=MyDoc.CreateElement("学员");
//创建一个<学号>属性,并把他绑定到<学员>节点
XmlAttribute MyAttribute=MyDoc.CreateAttribute("学号");
MyAttribute.Value=StuId.ToString();
MyElementRoot.SetAttributeNode(MyAttribute);
//创建一个<姓名>节点
XmlElement MyElementName=MyDoc.CreateElement("姓名");
MyElementName.InnerText=name;
//创建一个<性别>节点
XmlElement MyElementSex=MyDoc.CreateElement("性别");
MyElementSex.InnerText=sex;
//创建一个<出生日期>节点
XmlElement MyElementBirthday=MyDoc.CreateElement("出生日期");
MyElementBirthday.InnerText=birthday;
//创建一个<班级>节点
XmlElement MyElementClassId=MyDoc.CreateElement("班级");
MyElementClassId.InnerText=classid;
//把以上的节点添加到<学员>的子节点中
MyElementRoot.AppendChild(MyElementName);
MyElementRoot.AppendChild(MyElementSex);
MyElementRoot.AppendChild(MyElementBirthday);
MyElementRoot.AppendChild(MyElementClassId);

//添加<学员>节点到 MyDocFrag 对象中
MyDocFrag.AppendChild(MyElementRoot);

//获得具有[学号流水号]属性的[班级]节点
XmlNode TempNode=MyDoc.SelectSingleNode("//班级[@学号流水号]");
//把代码片段添加到DOM对象中
TempNode.AppendChild(MyDocFrag);

System.out.println("成功添加学员记录!");
System.out.println("按任意键继续...");
Console.ReadLine();
}

/// <summary>
/// 更新学员信息模块
/// </summary>
public static void UpdateModule()
{
System.out.println("请输入你将要修改学员的学生学号:");
int StuId;
try
{
StuId=int.Parse(Console.ReadLine());
}
catch
{
System.out.println("你输入了非法字符!");
return;
}
//搜索你要修改学员的学生学号
XmlNode MyNode=MyDoc.SelectSingleNode("//学员[@学号='"+StuId.ToString()+"']");
//如果没有搜索到,对象值就为 null
if(MyNode==null)
System.out.println("对不起,没有找到你想要修改的学员记录!");
else
{
//保存用户的输入
MyLabel1:System.out.println("请输入姓名:");
string name=Console.ReadLine();
if(name.Trim()==string.Empty)
goto MyLabel1;
MyLabel2:System.out.println("请输入性别:");
string sex=Console.ReadLine();
if(sex.Trim()==string.Empty)
goto MyLabel2;
MyLabel3:System.out.println("请输入出生日期:");
string birthday=Console.ReadLine();
if(birthday.Trim()==string.Empty)
goto MyLabel3;
MyLabel4:System.out.println("请输入班级:");
string classid=Console.ReadLine();
if(classid.Trim()==string.Empty)
goto MyLabel4;
//克隆原来节点
XmlNode MyNewNode=MyNode.CloneNode(true);
//进行赋值*作
MyNewNode.ChildNodes[0].InnerText=name;
MyNewNode.ChildNodes[1].InnerText=sex;
MyNewNode.ChildNodes[2].InnerText=birthday;
MyNewNode.ChildNodes[3].InnerText=classid;

//进行替换节点的*作
MyNode.ParentNode.ReplaceChild(MyNewNode,MyNode);
System.out.println("成功修改学员记录!");
}
System.out.println("按任意键继续...");
Console.ReadLine();
}

/// <summary>
/// 删除学员信息模块
/// </summary>
public static void DeleteModule()
{
System.out.println("请输入你将要删除学员的学生学号:");
int StuId;
try
{
StuId=int.Parse(Console.ReadLine());
}
catch
{
System.out.println("你输入了非法字符!");
return;
}
//搜索你要删除学员的学生学号
XmlNode MyNode=MyDoc.SelectSingleNode("//学员[@学号='" + StuId.ToString() + "']");
//如果没有搜索到,对象值就为 null
if(MyNode==null)
System.out.println("对不起,没有找到你想要删除的学员记录!");
else
{
//进行删除节点*作
MyNode.ParentNode.RemoveChild(MyNode);
System.out.println("成功删除学员记录!");
}
System.out.println("按任意键继续...");
Console.ReadLine();
}

/// <summary>
/// 查看所有学员信息模块
/// </summary>
public static void DisplayAll()
{
//搜索所有的<学员>节点,并赋给一个节点列表对象
XmlNodeList MyNodeList=MyDoc.SelectNodes("//学员");
//如果<学员>节点的数量不为0,就遍历节点列表对象进行打印
if(MyNodeList.Count!=0)
{
System.out.println(" ---------------------------------------------------------- ");
System.out.println("|学号\t姓名\t性别\t出生日期\t班级 |");
System.out.println(" ---------------------------------------------------------- ");
foreach(XmlNode MyNode in MyNodeList)
{
string strTemp=string.Empty;
strTemp+=MyNode.Attributes["学号"].Value+"\t"+ //获取学号
MyNode.ChildNodes[0].InnerText +"\t"+ //获取姓名
MyNode.ChildNodes[1].InnerText+"\t"+ //获取性别
MyNode.ChildNodes[2].InnerText+"\t"+ //获取出生日期
MyNode.ChildNodes[3].InnerText; //获取班级
System.out.println(strTemp);
}
System.out.println(" ---------------------------------------------------------- ");
}
else
System.out.println("当前DOM中没有学员记录!");
System.out.println("按任意键继续...");
Console.ReadLine();
}

/// <summary>
/// 系统模块
/// </summary>
public static void SystemAbout()
{
System.out.println(" __________________________________________________________ ");
System.out.println("|______________ 亿众国际 学生管理系统(精简版) _____________|");
System.out.println("| |");
System.out.println("| 作者:章程 电邮:stardicky@hotmail.com |");
System.out.println("| OICQ:9531511 版本:1.0 |");
System.out.println("|__________________________________________________________|");
}
}
}

⌨️ 快捷键说明

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