这个问题花费我两天时间,上网搜中文的资料大都换另一种方式解决的。说是在java中cmd不支持重定向,采用的另一种方式是得到Runtime.getRuntime().exec()的输入流,然后写到一个文本中。这个方法也不错(本人没有使用)。
今天要介绍的方法是调用本地的mysqldump.exe重定向的方式备份数据库。首先要说明的是mysqldump.exe在哪里不重要,重要的是要处理好路径中的非法字符。
那我的代码做例子吧。

上面我的mysqldump.exe的位置在本地的
C:\Program Files\Apache Software Foundation\Tom

本文介绍了如何在Java中使用Runtime.getRuntime().exec()方法,通过重定向调用含有空格和数字的本地mysqldump.exe来备份数据库。关键在于正确处理包含空格的路径,例如将"C:Program Files"转换为"C:/Progra~1"。文中提供了解决此问题的代码示例,并区分了不同情况下的路径处理方法。
最低0.47元/天 解锁文章
841





