📄 setconfig.java
字号:
/*
* Main.java
*
* 主服务器的开发从今天开始了从今天起 可能要遇到技术上的难题
* 但是这些是成长的经历中必须要面临的熟悉的资料已经熟悉的差不多了
* 开始进入了开发的阶段
* 2008年1月3日, 下午2:22
*
*
*
*/
/*
* 程序员杨龙:本视频会议服务器端代码:根据自己定义的协议:能构穿透nat 需要java jmf框架
* 我开放源代码是为了更好的让java这门程序艺术更好的发展:您可以研究代码,您可以自己使用
* 但是不要使用在商业用途上 让我们更好的把开源事业在中国做下去
* 2008年 3月 杨龙 完成服务器端的框架
* 信箱 :y_flash@163.com
* QQ:274797328
* www.0351soft.com www.lx08.com
*/
package ytp.javaserver.server;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.BindException;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
import java.util.Date;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
/**
*
* @author Administrator
*/
public class setConfig extends javax.swing.JFrame {
/** Creates new form setConfig */
public setConfig() {
initComponents();
jTport.setText("5000");
jTConfigPath.setText("");
jTMediaPath.setText("");
this.reset();
}
//清空各个选项 如果配置信息为空的话
public void reset()
{
try{
//ip地址列表信息展示
jIPlist.removeAllItems();
String hostName = InetAddress.getLocalHost().getLocalHost().getHostName();
InetAddress[] inet = InetAddress.getAllByName(hostName);
for(int index=0;index<inet.length;index++)
{
jIPlist.addItem(inet[index].getHostAddress());
}
File file = new File("config/config.dat");
if(file.exists())
{
//配置文件存在
FileInputStream fileIn = new FileInputStream(file);
int fileSize = fileIn.available();
byte[] byteRead = new byte[fileSize+1];
String strTemp = null;
//文件中有可以配置的信息
if(fileSize>0)
{
fileIn.read(byteRead);
strTemp = new String(byteRead); //构造配置文件字符串
String[] strs = strTemp.split("&");
for(int i=0; i<strs.length;i++)
{
//各自将信息写入到需要的文件框中
if(strs[i].startsWith("IP:")||strs[i].startsWith("ip:"))
{
jTip.setText(strs[i].substring(3));
}
if(strs[i].startsWith("port:")||strs[i].startsWith("PORT:"))
{
jTport.setText(strs[i].substring(5));
}
if(strs[i].startsWith("configPath:")||strs[i].startsWith("ConfigPath:"))
{
jTConfigPath.setText(strs[i].substring(11));
}
if(strs[i].startsWith("Mediapath:")||strs[i].startsWith("Mediapath:"))
{
jTMediaPath.setText(strs[i].substring(10));
}
if(strs[i].startsWith("time:")||strs[i].startsWith("time:"))
{
jLinfo.setText("您上次配置服务器信息时间是:"+strs[i].substring(5));
}
}
}else //文件中没有可以配置的信息
{
jLinfo.setText("您的服务器配置信息为空!请确认您已经配置过您的服务器:");
}
//读入配置信息 填充到
}else
{
jLinfo.setText("您这是首次配置您的服务器!");
}
}catch(FileNotFoundException e)
{
JOptionPane.showMessageDialog(this,e.toString());
}catch(IOException e)
{
JOptionPane.showMessageDialog(this,e.toString());
}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">//GEN-BEGIN:initComponents
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jIPlist = new javax.swing.JComboBox();
jLabel1 = new javax.swing.JLabel();
jTip = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jTport = new javax.swing.JTextField();
jButton1 = new javax.swing.JButton();
jLabel4 = new javax.swing.JLabel();
jTConfigPath = new javax.swing.JTextField();
jButton2 = new javax.swing.JButton();
jLabel5 = new javax.swing.JLabel();
jTMediaPath = new javax.swing.JTextField();
jButton3 = new javax.swing.JButton();
jButton4 = new javax.swing.JButton();
jButton5 = new javax.swing.JButton();
jLabel6 = new javax.swing.JLabel();
jLinfo = new javax.swing.JLabel();
jBexit = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("\u914d\u7f6e\u670d\u52a1\u5668\u4fe1\u606f");
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("\u914d\u7f6e\u670d\u52a1\u5668--\u586b\u5199\u60a8\u7684\u670d\u52a1\u5668\u914d\u7f6e\u4fe1\u606f"));
jIPlist.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
jIPlist.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jIPlistItemStateChanged(evt);
}
});
jLabel1.setText("\u670d\u52a1\u5668IP\u5730\u5740\u67e5\u770b:");
jTip.setText("jTextField1");
jLabel2.setText("\u60a8\u9009\u62e9\u7684\u670d\u52a1\u5668\u5730\u5740:");
jLabel3.setText("\u8bf7\u60a8\u586b\u5199\u7aef\u53e3(\u586b\u5199\u5b8c\u6bd5\u8bf7\u68c0\u67e5):");
jTport.setText("jTextField2");
jButton1.setText("\u68c0\u67e5\u7aef\u53e3\u662f\u5426\u53ef\u7528");
jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton1MouseClicked(evt);
}
});
jLabel4.setText("\u914d\u7f6e\u6587\u4ef6\u8def\u5f84:");
jTConfigPath.setText("jTextField3");
jButton2.setText("\u9009\u62e9");
jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton2MouseClicked(evt);
}
});
jLabel5.setText("\u6d41\u5a92\u4f53\u5b58\u653e\u8def\u5f84");
jTMediaPath.setText("jTextField4");
jButton3.setText("\u9009\u62e9");
jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton3MouseClicked(evt);
}
});
jButton4.setText("\u786e\u8ba4\u5199\u5165\u914d\u7f6e\u6587\u4ef6");
jButton4.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton4MouseClicked(evt);
}
});
jButton5.setText("\u6e05\u7a7a\u91cd\u65b0\u5199\u5165");
jButton5.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton5MouseClicked(evt);
}
});
jLabel6.setText("\u670d\u52a1\u5668\u914d\u7f6e\u4fe1\u606f:");
jLinfo.setText("jLabel7");
jBexit.setText("\u9000\u51fa\u7a97\u53e3");
jBexit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jBexitMouseClicked(evt);
}
});
org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jLabel3)
.add(jPanel1Layout.createSequentialGroup()
.add(jLabel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 180, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED))
.add(jLabel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 184, Short.MAX_VALUE))
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jTip, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 180, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jIPlist, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 147, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jPanel1Layout.createSequentialGroup()
.add(jTport, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jButton1)))
.add(54, 54, 54))
.add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel1Layout.createSequentialGroup()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(jPanel1Layout.createSequentialGroup()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -