比如在程序中调用cmd命令打开一个文件,而文件路径带有空格,如果直接把路径传给cmd,那么cmd就会把路径空格前面的部分当做是一个参数,空格后当做另一个参数,导致程序出错,解决方法是把传入的参数前后添加双引号。以java为例:
解决方法:
p = Runtime.getRuntime().exec(
"cmd /c start "+"\""+"\" "+"\"" +"%cd%/tool/ba t/Start DB.bat"+ "\"");
public static Process StartOracle() {
Process p = null;
try {
p = Runtime.getRuntime().exec(
"cmd /c start "+"\""+"\" "+"\"" +"%cd%/tool/ba t/Start DB.bat"+ "\"");
InputStream i = p.getInputStream();
int c;
while ((c = i.read()) != -1) {
System.out.println((char) c);
}
i.close();
p.waitFor();
} catch (Exception e) {
e.printStackTrace();
}
return p;
}
分享到:
相关推荐
### Java调用WinRAR生成压缩文件路径有空格问题解决方案 在进行文件处理时,我们经常需要对文件进行压缩操作以便于传输或者节省存储空间。Java作为一种常用的开发语言,在进行此类操作时通常会通过调用外部命令的...
本文将根据提供的部分CMD命令,详细介绍其功能与使用方法。 #### 二、具体命令解析 ##### 1. ASSOC - **功能**:显示或修改文件扩展名关联。 - **语法**: - `ASSOC [.ext[=fileType]]` - **参数说明**: - `....
CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本、文件系统版本) 命令大全 1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 ,是一个 监测网络中 DNS...
首先,让我们讨论如何在Delphi 7中打开一个带有参数的EXE程序。这可以通过使用`ShellExecute`函数来完成,它属于`ShlObj`单元。以下是一个简单的示例: ```delphi uses ShlObj; procedure OpenExeWithParams...
Call命令可以指定带有.bat或.cmd扩展名的批处理文件名,并可选地传递参数。其语法为“call [drive:][path]filename [batchparameters]”。 7. Start命令:Start命令用于从批处理文件中调用外部程序或者DOS命令。它...
对于带有空格的文件 名,您需要用双引号将文件名括起来。为了用这种方式来使 用双引号,您还需要使用 usebackq 选项,否则,双引号会 被理解成是用作定义某个要分析的字符串的。 %i 专门在 for 语句中得到说明,%j ...
因为该命令调用很多的子程序,涉及代码太多,维护时间耗时2天多,也因此拖慢了3.51的发布 故决定,先发布3.51版本,本命令可能隐藏的BUG,我们继续研究,看能否找出真正的问题所在 精易模块 V3.50 what’s new:...
9. **""**:字符串界定符,用于包含带空格的参数。 10. **, ; ( )**:分隔符和括号,用于参数分隔和逻辑结构。 11. **!**:在ENABLEDELAYEDEXPANSION下,用于批处理中的变量延迟扩展。 **FOR** 命令详解: FOR命令...
检测光驱中是否有盘.cmd 添加环境变量.cmd 解析ipconfig命令输出通用函数.cmd 调用系统气泡.cmd 通过inf重启电脑.cmd C盘转换为NTFS格式.cmd dos下重启.bat guest.bat win2000关机命令.bat WIN2003 IIS最小权限分配....
Java调用7zip解压压缩包实例的知识点主要包括了Java程序如何借助系统命令行调用外部程序7zip来执行压缩包解压操作的详细步骤,涉及到的命令行参数的使用,以及在操作过程中可能遇到的问题及其解决方法。接下来,我将...
在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。当然我们...
更新说明: 2017-02-04(yaya) Ls command: Empty Folder returns false. ...解决当命令行长度过长或批处理的参数过多时导致的内存冲突问题. 2013-03-19 1.新增连续命令分隔符";;",无阻碍顺序执行. 例子: set a...
检测光驱中是否有盘.cmd 模拟2K开机进度条.bat 模拟2K开机进度条.cmd 模拟黑客帝国数码雨.bat 每6行拼接为一行.cmd 比较两个文件夹下文件名的异同.cmd 水仙花数算法.cmd 求一列数所有不同组合的和.cmd 求最大公约数...
标题中的“解决bat文件名、目录名或卷标语法不正确”是指在Windows操作系统中,当你尝试运行一个批处理(BAT)文件或者访问某个目录时,如果遇到“文件名、目录名或卷标语法不正确”的错误,这通常意味着文件路径、...
首先,我们来看`ExecuteSqlWithGo`方法,这个方法通过正则表达式将带有`GO`的SQL语句分割成多个单独的SQL命令。`Regex.Split(sql.Trim(), "\r\n\\s*go", RegexOptions.IgnoreCase)`这一行代码将字符串按`\r\n`(换行...