`

一个简单的IP地址管理系统源代码

    博客分类:
  • Java
阅读更多

软件编程牛人网

import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StringReader;
import java.util.StringTokenizer;

/*
 * Created on 2005-1-12
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author Starshus
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class IPBook
{
    static boolean hasIP;
    public static void main(String [] args)
    throws Exception
    {
        int choice = -1;
        while (choice != 0)
        {
            IPBook ipBook = new IPBook();
            System.out.print("1.增加IP地址\n" +
              "2.查找IP地址\n" +
              "3.删除IP地址\n" +
              "0.退出程序\n输入:");
            BufferedReader in =
                new BufferedReader (
                        new InputStreamReader (System.in));
            String string = in.readLine();
            choice = Integer.valueOf(string).intValue();
            switch(choice)
            {
            case 1:{
                System.out.print("请以IP标准格式输入IP:\n" +
                  "比如127.0.0.1\n" +
                  "输入:");
                BufferedReader input =
                    new BufferedReader (
                            new InputStreamReader (System.in));
                String str = input.readLine();
                System.out.println(str);
                ipBook.writeIP(str);
            }break;
            case 2:{
                System.out.print("请输入你要查找IP地址的头地址\n" +
                  "比如你要查找127.0.0.1的话就请输入127\n" +
                  "输入:");
                BufferedReader input =
                    new BufferedReader (
                            new InputStreamReader (System.in));
                String str = input.readLine();
                long l = Integer.valueOf(str).longValue();
                ipBook.findIP(l);
                if(hasIP)
                {
                    String result = ipBook.findIP(l);
                    System.out.println(result);
                }else{
                    System.out.println("没有找到:(");
                }
            }break;
            case 3:{
                System.out.print("请输入你要删除IP地址的头地址\n" +
                  "比如你要删除127.0.0.1的话就请输入127\n" +
          "输入:");
                BufferedReader input =
                    new BufferedReader (
                            new InputStreamReader (System.in));
                String str = input.readLine();
                long l = Integer.valueOf(str).longValue();
                ipBook.deleteIP(l);break;
            }
            }
        }     
    }
    public void inputIP(String ip)
    throws Exception
    {
        try{
            BufferedReader in1 =
                new BufferedReader (
                        new FileReader("IPBook.txt"));
            String s1 = "",s2 = "";
            while ((s1 =in1.readLine())!= null)
            {
                s1 = s1+"\n";
                s2 = s2 + s1;
            }
            s2 = s2 + ip;
            DataInputStream in2 =
                new DataInputStream(
                    new ByteArrayInputStream((s2.getBytes())));
            DataOutputStream out =
                new DataOutputStream(
                    new BufferedOutputStream(
                            new FileOutputStream("IPBook.txt")));
            while (in2.available() != 0)
            {
                out.write(in2.read());
            }
            in2.close();
            out.close();
            System.out.println("写"+ip+"到文件IPBook.txt中!");
        }catch(Exception e){}
    }
    public String findIP(long ip)
    throws Exception
    {
        hasIP=true;
        String readLine ="";
        String result="";
        try{
            BufferedReader in =
                new BufferedReader (
                        new FileReader("IPBook.txt"));
            long top;
            while ( (readLine = in.readLine())!=null)
            {
                top = topTokenizer(readLine);
                if (top == ip)
                {
                    result += readLine+"\n";
                }
            }
            if(result=="")
                hasIP= false;
        }catch(Exception e){}
        return result;
    }
    public long topTokenizer(String ip)
    throws Exception
    {
        String top = "";
        try{
            StringTokenizer st = new StringTokenizer (ip,".");
            top = st.nextToken();
        }catch(Exception e){}
        return Integer.valueOf(top).longValue();
    }
    public boolean isIP(String str)
    throws Exception//判断格式是否正确
    {
        try{
            StringTokenizer st = new StringTokenizer (str ,".");
            String s1="",s2="",s3="",s4="";
            s1 = st.nextToken();
            s2 = st.nextToken();
            s3 = st.nextToken();
            s4 = st.nextToken();
         }
         catch(Exception e){}
        return true;
    }
    public void writeIP(String ip)//向文件中加写IP地址
    throws Exception
    {
        try{
            if(isIP(ip))
        {
            try{
                inputIP(ip);
            }catch(IOException e){}           
        }else
            System.err.println("请正确输入IP地址!");
        }catch(Exception e){}
    }
    public void deleteIP(long ip)//用头地址删除ip
    throws Exception
    {
        String find = "";
        String ss = "";
        findIP(ip);
        if(hasIP)
        {
            try{
                find = findIP(ip);
                String temp = "";
                BufferedReader in =
                    new BufferedReader(
                            new FileReader("IPBook.txt"));
                while (   (temp=in.readLine())!=null   )
                {
                    if(topTokenizer(temp)!=ip)
                    {
                        ss += temp+"\n";
                    }
                }
                BufferedReader in2 =
                    new BufferedReader(
                            new StringReader(ss));
                String sss = "";
                PrintWriter out =
                    new PrintWriter (
                            new BufferedWriter (
                                    new FileWriter("IPBook.txt")));
                while (  (sss = in2.readLine()) != null)
                {
                    out.println(sss);
                }
                out.close();
                System.out.println("已删除.");
            }
            catch(Exception e){}
        }else{
            System.out.println("没有找到:(");
        }
    }
}

 


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/starshus/archive/2005/01/13/252270.aspx

分享到:
评论

相关推荐

    IP地址精准定位系统PHP源码

    而且还能直接在地图上显示,地图使用的是/百度地图的接口,你只需要输入一个IP地址然后点击查询按钮即可在地图上看到该IP地址所在的显示地理位置,误差最精可以达到100米以内。 api接口修改:js/heightaccapi.js(第...

    基于ASP的IP地址登记管理系统-保证可用

    为方便管理单位的IP编写,功能简单。 可对部门名称、IP地址、MAC址地进行登记,可批量添加。 数据库采用ACCESS,下载后即可使用

    IP地址精准定位系统源码 ip地址精确定位软件

    IP地址精准定位系统源码是一套简单的IP地址查询加地图定位的系统,比以往的IP地址查询更加精准和方便。 我们知道以往的IP地址查询程序都是只能查询到该IP地址所属的市级单位,但是这套源码查询的IP地址能够精确到...

    PHP版IP地址精准定位系统源码 IP地址查询地图定位.zip

    使用说明: 直接将所有文件上传到服务器或...在查询框中输入你要查询的IP地址,点击查询按钮后即可在下方的地图中定位该IP地址。 IP定位较为精准,一般误差不差过100米-300米。 因为不需要后期维护,所以没有管理后台。

    PHP实例开发源码-IPAM IP地址管理系统.zip

    PHP实例开发源码—IPAM IP地址管理系统.zip PHP实例开发源码—IPAM IP地址管理系统.zip PHP实例开发源码—IPAM IP地址管理系统.zip

    JavaScript期末大作业图书管理系统源代码.zip

    JavaScript期末大作业图书管理系统源代码。 逻辑: 用户登录之前: 到时候会将项目部署到我的服务器上面,所以会有一个公网IP(项目地址) 输入项目地址,进入index(初始页面): 页面用来展示介绍咱项目的具体...

    IP管理设置工具源代码

    可通过程序设置系统的IP地址 资源类型:vc6源码 资源描述:IP管理工具,有IP管理、设置功能,winxp下调试通过。

    IP地址精准定位系统源码 v1.0

    IP地址精准定位系统源码是一套简单的IP地址查询加地图定位的系统,比以往的IP地址查询更加精准和方便。我们知道以往的IP地址查询程序都是只能查询到该IP地址所属的市级单位,但是这套源码查询的IP地址能够精确到误差...

    PHP实例开发源码—IPAM IP地址管理系统.zip

    PHP实例开发源码—IPAM IP地址管理系统.zip

    IP地址查询系统

    目前最新最全的ip地址数据库

    ASPNET 投票管理系统源码

    ip地址管理 1. 管理ip地址:在系统参数设置中,可以设置IP的限制。设置启动之后,这里显示投票人的ip地址。 五. 系统模版设定 1. 模版类型管理:新建模型可以设置该投票页面的CSS样式。 2. 模版管理:模版设定 ...

    安卓大作业基于Android的宿舍管理系统源码

    com.hjq.demo.http.server.ReleaseServer这个类的getHost这个方法改成本地的ip地址 本课题充分调研高校宿舍管理内容和流程,通过查阅和分析相关资料,应用所学Android 等技术和知识,选用适合的主流开发技术和开源...

    IPAM IP地址管理系统 v1.6.0.zip

    IPAM IP地址管理系统 v1.6.0.zip

    IP地址查询系统 v1.0-ASP源码.zip

    ASP源码,压缩包解压密码:www.cqlsoft.com

    IPAM IP地址管理系统 v1.4.1

    为您提供IPAM IP地址管理系统下载,phpIPAM是一个开源Web IP地址管理应用程序。其目标是提供轻便简单的IP地址管理应用程序。它是基于Ajax的,使用jQuery库,它使用php脚本和javascript以及一些HTML5/CSS3功能,因此...

    文章管理系统cms源码

    文章管理系统 具有以下相应的功能. 加强了SQL防注的功能,当外来入侵人员开始试着注入时,将锁定对方的IP地址 加入了留言板,进入后台可以管理 加入一个小的许愿墙程序

    OA系统+手机版源码t源代码

    政 府、企事业单位的信息化建设是一个集办公自动化、业务管理、领导决策等应用为一体综合信息管理系统,是一个应用覆盖面广泛,涉及部门多的应用系统。财务、 人事、或业务管理系统往往只是涉及一个部门,或者一...

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    java源码包---java 源码 大量 实例

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

Global site tag (gtag.js) - Google Analytics