我的聊天/文件传输软件代码(----FriendIP代码)

/**
 * 存储获得朋友IP
 
*/

package  friendIP;
import  javax.swing. * ;
import  java.awt. * ;
import  java.awt.event. * ;
import  mychat. * ;
import  java.io. * ;
import  java.util. * ;
import  java.net. * ;
import  javax.swing.border.TitledBorder;
public   class  FriendIP  extends  JFrame {
    
    
private JLabel label;
    
private JList list;
    
private JScrollPane scroll;
    
private TitledBorder border;
    
private JButton button;
    
//存储ip
    private ArrayList<String> data;
    
private Container pane;
    
private  int width=Toolkit.getDefaultToolkit().getScreenSize().width/2;
    
private  int height=Toolkit.getDefaultToolkit().getScreenSize().height/2;
    
private String selectValue;
   
    
/**
     * 初始化
     
*/

    
public FriendIP(){    
        data
=new ArrayList<String>();
        
try{
            data.add(InetAddress.getLocalHost().getHostAddress());    
        }
catch(Exception ee){
            ee.printStackTrace();
        }

        
        selectValue
=null;
        label
=new JLabel("好友IP列表");
        list
=new JList(this.getData().toArray());
        list.setSelectionForeground(Color.magenta);
        list.setSelectionBackground(Color.white);
        list.setVisibleRowCount(
3);
        list.setFixedCellHeight(
30);
        scroll
=new JScrollPane(list);
        border
=new TitledBorder("");
        button
=new JButton("发送");
        button.addActionListener(
new ActionListener(){
            
public void actionPerformed(ActionEvent e){
                setSelectValue();
                String st
=getSelectValue();                
                dispose();            
                mychat.MyChatFrame.setFriendIP(st);
            
            }

        }
);
        
        pane
=this.getContentPane();
        pane.setLayout(
null);
        pane.setBackground(Color.white);
        
this.setSize(400,200);
        
this.setLocation(width/4+150,height/4+150);
        
        label.setBounds(
new Rectangle(10,60,80,40));
        label.setBorder(border);
        scroll.setBorder(border);
        scroll.setBounds(
new Rectangle(90,60,200,40));
        
        button.setBorder(border);
        button.setBounds(
new Rectangle(300,60,80,40));
        
        pane.add(label);
        pane.add(scroll);
        pane.add(button);
        Image image
=Toolkit.getDefaultToolkit().createImage("picture/goo.gif");
        
this.setIconImage(image);    
        
this.setResizable(false);
    }

    
/**
     * 获得选择的朋友IP
     
*/

    
public String getSelectValue(){    
        
return selectValue;
    }

    
public void setSelectValue(){
        selectValue
=(String)list.getSelectedValue();
        
    }

    
    
public int getListCount(){
        
int count=list.getModel().getSize();
        
return count;
    }

    
/**
     * 获得所有的朋友IP
     
*/

    
public ArrayList<String> getData(){
        ArrayList
<String> data8=new ArrayList<String>();
        
try{
            
            File file
=new File("friends/friend.lh");
            
if(!file.exists()||file.isDirectory()){
                  file.createNewFile();
                  
return data;
            }
         
            
else{
               BufferedReader read
=new BufferedReader(new InputStreamReader(new FileInputStream(file)));
               String line
=null;
               
int j=1;
               
               data8.add(data.get(
0));
               
while( (line=read.readLine())!=null){                                      
                   
if(line.equals(data.get(0)));
                   
else
                   data8.add(line);
               }

                   
               
return data8;
                                        
            }

            
        }
catch(Exception e){
            e.printStackTrace();
        }

        
        
return data;
    }
    
    
/**
     * 存储所有的朋友IP
     
*/

    
public void setData(ArrayList<String> data3){    
        
try{                    
        File file
=new File("friends/friend.lh");
        
if(file.isDirectory()||!file.exists()){
            file.createNewFile();
            BufferedWriter buff
=new BufferedWriter(new OutputStreamWriter(new FileOutputStream (file)));        
            
for(int i=0;i<data3.size();i++){
                
if(i==data3.size()-1){
                    buff.write(data3.get(i));
                }

                
else{
                    buff.write(data3.get(i));
                    buff.newLine();
                }
                            
            }

            buff.close();
        }

        
else{
            BufferedWriter buff
=new BufferedWriter(new PrintWriter(file));                       
            
for(int j=0;j<data3.size();j++){           
                buff.write(data3.get(j));
                buff.newLine();                
            }

            buff.close();           
        }

        }

        
catch(Exception e){
            e.printStackTrace();
        }

        
 }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值