A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Stars√永恒 中级黑马   /  2014-2-25 11:45  /  896 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. public static void main(String[] args) {  
  2.         // TODO Auto-generated method stub  
  3.         try {  
  4.            Runtime javaRuntime = Runtime.getRuntime();  
  5.             Process pr=javaRuntime.exec("cmd.exe /c sqlcmd -s 127.0.0.1:1433 -d jxshow_data_temp -i F:\t.sql");  
  6.                
  7.              BufferedReader br = new  BufferedReader(new InputStreamReader(pr.getInputStream()));  
  8.             while(true) {  
  9.                String s= br.readLine();  
  10.                if (s==null)break;  
  11.                System.out.println(s);  
  12.           }  
  13.            br.close();  
  14.    
  15.         } catch (IOException e) {  
  16.             // TODO Auto-generated catch block  
  17.             e.printStackTrace();  
  18.         }
复制代码
   }  

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

2 个回复

倒序浏览
sqlcmd命令我没用过,但用Java运行cmd命令好像字符串前面不用加"cmd.exe",参考如下,我试过,大部分命令能执行,但有些不行:

  1. public class Demo
  2. {
  3.         public static void main(String[] args) throws Exception
  4.         {
  5.                 Process process = Runtime.getRuntime().exec("ipconfig -all");
  6.                
  7.                 //获取执行结果输出
  8.                 InputStream is = process.getInputStream();
  9.                 BufferedReader bufr = new BufferedReader(new InputStreamReader(is, "GBK"));
  10.                
  11.                 String len = "";
  12.                 while((len = bufr.readLine()) != null)
  13.                 {
  14.                         System.out.println(len);
  15.                 }
  16.         }
  17. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
Process process = Runtime.getRuntime().exec("cmd /c dir c:\\folder");
你在cmd里打dir /? 就可以查看运行dir命令的一些参数,在dir后面写上目录名称,可以直接打印出那个目录的结构

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马