`

一个简单的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

分享到:
评论

相关推荐

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

    标题中的“基于ASP的IP地址登记管理系统-保证可用”表明这是一个使用Active Server Pages (ASP)技术开发的系统,主要用于管理IP地址。ASP是微软的一种服务器端脚本环境,用于生成动态网页。该系统的设计目标是简化...

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

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

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

    IPAM IP地址管理系统v1.5.2是一个专为此目的设计的应用程序,旨在简化和自动化IP地址的规划、分配、跟踪和审计过程。在这个版本中,可能包含了对系统性能的优化、功能增强以及修复了早期版本中的某些问题。 该...

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

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

    IP管理设置工具源代码

    标题中的“IP管理设置工具源代码”指的是一个用于操作系统网络配置的软件开发资源,特别是针对IP地址的管理和设定。这个工具允许用户通过编程方式更改和管理他们的IP设置,以适应不同的网络环境。在IT领域,这通常是...

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

    《IPAM IP地址管理系统 v1.6.0》是一款专为网络管理员设计的高效能IP地址管理工具,它集成了源代码,适用于毕业设计、论文研究以及计算机案例分析。通过这款系统,用户能够轻松地监控、分配和管理网络中的IP地址资源...

    IP地址查询系统

    总的来说,"IP地址查询系统"是一个涉及网络编程、数据库操作、地理定位技术的综合项目,它能够为用户提供IP地址相关的丰富信息,对网络管理和分析具有极大的实用价值。开发者需要具备扎实的编程基础,熟悉网络协议,...

    delphi IP地址切换器含源码

    标题 "delphi IP地址切换器含源码" 暗示了这是一个使用 Delphi 开发的应用程序,专门设计用于帮助用户快速切换他们的IP地址。Delphi 是一款强大的面向对象的编程环境,基于 Pascal 语言,它提供了丰富的组件库和集成...

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

    【标题】"IP地址查询系统 v1.0-ASP源码.zip" 提供的是一个基于ASP(Active Server Pages)技术的IP查询系统。ASP是一种由微软开发的服务器端脚本环境,它允许开发者创建动态、交互式的Web应用程序。这个系统的版本为...

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

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

    ASP酒店管理系统源代码

    输入网站的名称、物理路径(指向ASP酒店管理系统源代码所在的文件夹)、主机名(可选,用于绑定特定域名)以及IP地址和端口号。 3. 配置应用程序池:新建或选择一个合适的应用程序池,并确保其.NET框架版本设置正确...

    易语言源码本机IP地址、子网掩码、DNS服务器地址设置.rar

    易语言是一种专为中国人设计的编程语言,它以简体中文...对于学习易语言和网络配置管理的初学者来说,这是一个宝贵的资源,可以通过阅读和分析源码来深入理解网络配置的工作原理,以及如何用易语言编写这类实用程序。

    C#091显示IP系统 源代码 源代码

    描述中的内容与标题相同,进一步确认了这是一个关于C#编程语言的IP系统源代码项目。没有提供更具体的功能细节,但我们可以推测这可能是一个简单的IP地址解析和显示工具,也可能是更复杂的网络管理系统的一部分。 ...

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

    【PHP实例开发源码-IPAM IP地址管理系统.zip】是一个基于PHP编程语言的IP地址管理系统的源代码包。IPAM(IP Address Management)系统主要用于企业的网络管理,它可以帮助管理员有效地跟踪、分配和管理网络中的IPv4...

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

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

    基于PHP的IPAMIP地址管理系统源码.zip

    【描述】提供的压缩包"基于PHP的IPAM IP地址管理系统源码.zip"包含了一套完整的IP地址管理系统源代码,意味着用户可以深入研究其内部工作原理,自定义功能,或者在现有项目中集成此系统。这对于开发者或网络管理员来...

    icp/ip备案管理系统

    IP(Internet Protocol)则代表互联网协议地址,即我们常说的IP地址。在中国,根据《互联网信息服务管理办法》等相关法规,任何公开提供互联网信息服务的网站都需要进行ICP备案,而IP备案主要是针对服务器或网络设备...

    一个c#写的用于设置IP地址的源代码

    标题中的“一个C#写的用于设置IP地址的源代码”是指使用C#编程语言编写的程序,该程序能够帮助用户方便地更改计算机的IP地址。在IT领域,尤其是在网络管理和系统配置中,这样的工具非常实用,特别是在需要频繁切换...

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

    【PHP实例开发源码—IPAM IP地址管理系统.zip】是一个基于PHP编程语言的源代码包,主要用于构建一个IP地址管理(IPAM)系统。IPAM是网络管理领域的一个关键组件,它帮助管理员有效地追踪、分配和管理网络中的IPv4和...

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

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

Global site tag (gtag.js) - Google Analytics