网络编程技术实验指导书2010之实验一
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《网络编程技术》实验指导书
2010版
(网络工程专业)
山东建筑大学计算机科学与技术学院
网络工程教研室袁卫华
实验一使用多线程技术下载网络资源数据文件(1)
一、实验目的
熟悉java运行环境,编程掌握Java输入输出流和Swing组件的用法。
二、实验环境
一般微机即可,软件MyEclipse,JDK1.5以上版本即可。
三、实验内容
1)搭建java运行环境
2)Java IO流的用法
3)Swing组件及事件处理
四、实验步骤
1.完成以下程序。
第一题:从键盘输入一首诗,把它写入到文本文件poem.txt中。要求:(1)一次输入一行诗,输完后将其会现在屏幕上。然后再输入下一句。(2)最后将整首诗的内容从poem.txt中读取出来,显示在屏幕上。
(3)诗的内容:
静夜思
床前明月光,
疑是地上霜。
举头望明月,
低头思故乡。
提示:
程序运行截图
◆键盘输入可使用System.in是一个原始的未经包装的InputStream。
◆本题中要求一次读入一行诗句,所以System.in流的输入需要经适配器
InputStreamReader必须对其进行包装,将其转换为字符流,然后使用缓冲式字符流BufferedReader对其进行包装,这样方可以使用BufferedReader 类的readLine()方法进行整行读取。
第二题:编写一个计算三角形面积的小程序,要求用户输入三角形的三边长,然后将计算出的三角形面积显示在JFrame窗口中。
提示:
◆程序运行效果图
①正常运行的情况
②如果用户输入非数值型数据
③如果用户输入的数据无法构成三角形
◆提示之关于界面设计
可以使用两个JPanel,一个JPanel放置上图第一行的swing组件,一个JPanel 放置上图第二行的组件。
如其中一个JPanle可以这样设计:
f=new JFrame("计算三角形面积");
//设置Frame的属性
……
p=new JPanel();
l=new JLabel("请输入三角形的三条边长:");
t1=new JTextField("0",5);
t2=new JTextField("0",5);
t3=new JTextField("0",5);
//将三个文本框都注册给焦点事件监听者
……
p.add(l);
p.add(t1);
p.add(t2);
p.add(t3);
f.add(p);
◆三角形的面积计算
Math.sqrt(q*(q-a)*(q-b)*(q-c)),q=a+b+c/2
在计算面积之前需要先判定用户的输入能否构成三角形
◆判定用户的输入数据格式是否合法可以使用焦点事件FocusEvent的监听
接口FocusListener
class HandleFocus implements FocusListener {// 内部类,焦点处理public void focusGained(FocusEvent e) {
}
public void focusLost(FocusEvent e) {
……
}
第三题:在本机上建立一个文件,将文本框中输入的下列类型的数据,如
int:100;float:3.1415925; double:3.1415926; long:1234567891; boolean:true; int:100;
String:"祖国,祖国,我爱你!"
String:“中国,中国,我的祖国!”
通过单击按钮“写原始数据类型到文件…”按钮写入到这个文本文件中。然后通过单击按钮“从文件中读取原始数据类型“把这些数据读取出来,显示在JFrame 的文本区中。
要求:
能将界面正确的设计出来,能将用户从文本框输入的数据写入到文件中,并能从文件中再把输入读出显示在JFrame最下面的JTextArea中。
提示:
◆不需要对各个文本的数据格式做验证(假设用户每次都能输入合法的数据格
式)
◆文件的扩展名可以自己定义,文件的可能路径是这样的:DataOutputStream ds = new DataOutputStream(new FileOutputStream("src/chap02/io.rtr"));
也可以自己设定路径
◆本题着重是DataOutputStream,DataInputStream,FileInputStream和
FileOutputStream类的用法
◆程序的参考运行界面如下所示:
实验一使用多线程技术下载网络资源数据文件(2)
一、实验目的
熟悉java运行环境,编程掌握Java输入输出流和Swing组件的用法。
二、实验环境
一般微机即可,软件MyEclipse,JDK1.5以上版本即可。
三、实验内容
1)搭建java运行环境
2)Java IO流的用法
3)Swing组件及事件处理
四、实验步骤
1.完成以下程序。
第四题:编程实现一个人机交互版的猜数游戏
◆第一个线程givenNumberThread负责随机给出1-100之间的一个整数,
◆第二个线程guessNumberThread负责提取用户从键盘输入的所猜得的数字,
◆每当第二个线程给出自己的猜测后,
◆第一个线程会提示“猜大了”,“猜小了”,“猜对了”。
提示:
(1)程序运行截图