`

Java call windows command

阅读更多
http://winter8.iteye.com/blog/434683
http://sesame.iteye.com/blog/434088

博主写得不错!下面都是copy的,看原文吧。


import java.io.BufferedReader;  
import java.io.InputStreamReader;  
  
public class ConnectNetWork 
{  
    public static void main(String[] args) throws Exception 
    {  
        connAdsl("宽带","hzhz**********","******");  
        Thread.sleep(1000);  
        cutAdsl("宽带");  
        Thread.sleep(1000);  
        //再连,分配一个新的IP  
        connAdsl("宽带","hzhz**********","******");  
    } 
  
    /** 
     * 执行CMD命令,并返回String字符串 
     */  
    public static String executeCmd(String strCmd) throws Exception {  
        Process p = Runtime.getRuntime().exec("cmd /c " + strCmd);  
        StringBuilder sbCmd = new StringBuilder();  
        BufferedReader br = new BufferedReader(new InputStreamReader(p  
                .getInputStream()));  
        String line;  
        while ((line = br.readLine()) != null) {  
            sbCmd.append(line + "\n");  
        }  
        return sbCmd.toString();  
    }  
  
    /** 
     * 连接ADSL 
     */  
    public static boolean connAdsl(String adslTitle, String adslName, String adslPass) throws Exception {  
        System.out.println("正在建立连接.");  
        String adslCmd = "rasdial " + adslTitle + " " + adslName + " "  
                + adslPass;  
        String tempCmd = executeCmd(adslCmd);  
        // 判断是否连接成功  
        if (tempCmd.indexOf("已连接") > 0) {  
            System.out.println("已成功建立连接.");  
            return true;  
        } else {  
            System.err.println(tempCmd);  
            System.err.println("建立连接失败");  
            return false;  
        }  
    }  
  
    /** 
     * 断开ADSL 
     */  
    public static boolean cutAdsl(String adslTitle) throws Exception {  
        String cutAdsl = "rasdial " + adslTitle + " /disconnect";  
        String result = executeCmd(cutAdsl);  
         
        if (result.indexOf("没有连接")!=-1){  
            System.err.println(adslTitle + "连接不存在!");  
            return false;  
        } else {  
            System.out.println("连接已断开");  
            return true;  
        }  
    }  
}  

分享到:
评论

相关推荐

    Java通过进程名称杀进程

    - `wmic`:Windows Management Instrumentation Command-line,是一种用于访问和操作Windows管理信息的命令行工具,可以用来启动、停止、暂停、恢复进程等。 3. **Java Runtime Environment (JRE)**: - JRE是...

    windows下CAD-Java调用控件方法

    在Windows环境下,将AutoCAD(CAD)集成到Java应用程序中是一项常见的需求,这通常涉及到CAD控件的调用。在本篇文章中,我们将深入探讨如何在Java中有效地调用CAD功能,实现与CAD数据的交互。 首先,我们需要理解...

    Java调用外部程序命令

    WMIC(Windows Management Instrumentation Command-line)是一个强大的命令行工具,可以用来查询、设置和管理Windows系统的各种组件。 - **具体命令格式:** ```bash wmic service where "name='<service name>...

    Java调用应用程序和Dos中的命令

    本文将详细介绍如何使用Java来调用应用程序以及如何在Windows操作系统中调用DOS命令。 #### 一、Java调用应用程序的基本概念 在Java中,`java.lang.Runtime`类提供了与当前运行时系统交互的方法,其中包括`exec()`...

    java程序实现print2flash转swf

    接着,我们提到`jacob`库,这是一个Java和COM(Component Object Model)之间的桥梁,使得Java程序可以利用Windows上的COM组件。在本例中,`jacob`可能用于自动化`print2flash`的使用,比如自动触发转换过程,或者...

    javacv-platform-1.3.3-src

    but to get binaries for only one platform we can set the javacpp.platform system property (via the -D command line option) to something like android-arm, linux-x86_64, macosx-x86_64, windows-x86_64, ...

    使windows系统环境变量的改变即时生效

    本文将介绍如何利用WMIC(Windows Management Instrumentation Command-line)命令行工具,实现在不重启系统的情况下,即时更新JDK的环境变量。 首先,我们需要理解环境变量的类型:系统环境变量和用户环境变量。...

    Java邮件开发Fundamentals of the JavaMail API

    Looking to incorporate mail facilities into your platform-independent Java solutions? Look no further than the JavaMail API, which offers a protocol-independent model for working with IMAP, POP, ...

    amr wav互转代码

    subprocess.call(command, shell=True) # 转换AMR到WAV convert_audio('.amr', '.wav') # 转换WAV到AMR convert_audio('.wav', '.amr') ``` 此脚本会查找当前目录下所有匹配扩展名的文件,并进行相应的转换。请...

    ExcelPanel Studio Demo

    JAVACALL JAVA调用EP JSON JSON封装 M2M 物联网功能 MAIL 邮件功能 MESSAGEPOPUP 消息泡泡 MONITOR 监控器 OCR 光学识别 OFFICEADDIN OFFICE插件开发(EXCEL) PDF PDF转换与制作 PLUGINS 插件扩展 PROCESSSHARE ...

    chromedriver.exe

    org.openqa.selenium.WebDriverException: unknown error: call function result missing 'value' (Session info: chrome=65.0.3325.162) (Driver info: chromedriver=2.34.522940 (1a76f96f66e3ca7b8e57d503b4dd3...

    InstallAnyware 打包tomcat+mysql+jsp

    c:/windows/system32 注册服务 ------------ Post-Install ==> Add Action...==> Execute Command==> Add Command Line: cmd /c $USER_INSTALL_DIR$/install.bat $USER_INSTALL_DIR$$USER_INSTALL_DIR$ 是传递给 ...

    调用本地记事本程序打开txt

    我们可以使用`subprocess.call()`或`subprocess.run()`函数来调用记事本。例如: ```python import subprocess file_path = "path_to_your_file.txt" # 替换为实际txt文件路径 subprocess.run(["notepad", file...

    Installanywhere打包javaweb项目

    my.ini: 这是windows下的配置文件,配置了mysql的信息,解压版中是没有该文件的 手动创建一个,内容可以为空,也可以不为空,放入些基本的配置,我这里是直接为空的 为了后面installanywhere动态插入配置方便 4、...

    windows 批处理笔记

    Tomcat是Apache软件基金会的一个开源项目,是一个流行的Java应用服务器,特别适合运行小型到中型的Web应用程序。批处理脚本可以自动化下载Tomcat安装包、解压、配置环境变量等步骤,使得安装过程更为便捷。 `test....

    web程序设计课件CH5Web数据库程序设计.ppt

    它遵循SQL Call Level Interface规范,让Java代码可以操作各种类型的数据库。 5. **ADO(ActiveX Data Objects)**:ADO是微软Web服务器端的组件,通过OLEDB提供者(如Microsoft SQL Server、Microsoft Access)来...

    用InstallAnyWhere工具打包J2EE程序

    在`Post-Install`菜单中,通过`Add Action > Execute Command > Add`来执行`install.bat`,注册Tomcat和MySQL服务。命令行参数如下: ```bat cmd/c$USER_INSTALL_DIR$\install.bat$USER_INSTALL_DIR$ ``` 确保选中...

    控制台cmd命令大全

    * CALL:从另一个批处理程序调用这一个 * CLS:清除屏幕 * CMD:打开另一个 Windows 命令解释程序窗口 * COLOR:设置默认控制台前景和背景颜色 * COMP:比较两个或两套文件的内容 * COMPACT:显示或更改 NTFS 分区上...

    NDK的Windwos环境搭建

    访问Google的Android开发者网站(https://developer.android.com/studio#downloads),选择“Command line tools”并下载适用于Windows的zip文件。解压后将路径添加到系统环境变量`PATH`中,以便在任何地方调用NDK...

Global site tag (gtag.js) - Google Analytics