java实现的电台广播

实现一个广播数据发送程序,类似于电台广播,广播电台需要在指定的波段和频率上广播信息,收听者也要将收音机调到指定的波段和频率才能收听广播。主机不断地重复播出节目预报,可以保证同一组的主机接收到广播信息,接收者将正在收到的信息存放在一个文本域中,将接收到的全部信息放在另一个文本域中。【广播信息可通过设置IP地址实现,例如:String host = “255.255.255.255”;//这是一个广播地址–代表所有主机,10.0.135.255──代表前3个网段是 10.0.135的所有主机】
import javax.swing.;
import java.awt.
;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class 第二题1 {
public static void main(String[] args) throws Exception {
JFrame jf=new JFrame(“欢迎进入电台”);
jf.setVisible(true);
jf.setBounds(600,300,600,600);
JPanel panel1=new JPanel();
jf.setLayout(new GridLayout(5,1));
JLabel label1=new JLabel(“波段”);
JLabel label2=new JLabel(" 频率");
JTextField t1=new JTextField(10);
JTextField t2=new JTextField(10);
panel1.add(label1);
panel1.add(t1);
panel1.add(label2);
panel1.add(t2);
jf.add(panel1);
JTextArea t=new JTextArea();
t.setLineWrap(true);
jf.add(t);
JLabel label=new JLabel(“全部信息:”);
JTextArea jTextArea=new JTextArea();
jf.add(label);
jTextArea.setLineWrap(true);
jf.validate();
while (true){
if (t2.getText().equals(“50”)){
DatagramSocket ds=new DatagramSocket(Integer.parseInt(t1.getText()));
byte bytes[]=new byte[1024];
DatagramPacket dp=new DatagramPacket(bytes,bytes.length);
ds.receive(dp);
byte[] data = dp.getData();
t.setText(new String(data));
jTextArea.setText(jTextArea.getText()+t.getText());
ds.close();
}
}
}
}
package test04;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class 第二题2 {
public static void main(String[] args) throws Exception {
while (true){

        DatagramSocket ds=new DatagramSocket();
        int port=3333;
        InetAddress addresses = InetAddress.getByName("127.0.0.1");
        String s="这里是127.0.0.1,波段3333,我是主持人张贺";
        String arr[]=s.split("\n");
        for(int i=0;i<=arr.length-1;i++){
            byte[] bytes = arr[i].getBytes();
            DatagramPacket dp=new DatagramPacket(bytes,bytes.length,addresses,port);
            ds.send(dp);
            Thread.sleep(1*1000);
        }
    }
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值