gpt4 book ai didi

java - 无法通过Java运行命令,但可以通过cmd运行 CreateProcess error=2, 系统找不到指定的文件

转载 作者:行者123 更新时间:2023-12-04 23:33:45 27 4
gpt4 key购买 nike

我无法将我的 mp3 转换为 wav,以便使用 Java 进行数据操作。我可以在调试时打开命令提示符并复制存储在 s 中的确切字符串,这将正确创建 wav 文件。代码如下。我能够通过以这种方式构建字符串来使用 ffmpeg,从而根据轨道列表将一些 mp3 分成单独的轨道。我重新安装了 Windows 10,所以我假设它与此有关。有我必须更改的设置吗?为什么它会在命令提示符下运行,而不是在 Java 中运行?

package mp3towav;

import java.io.File;
import java.io.IOException;

public class Mp3towav {

// mp3 folder
public static final String MP3FOLDER = "C:\\Users\\Al\\Documents\\Sounds\\PokemonOST\\YellowOST\\MP3";

public static void main(String[] args) throws IOException {

// Gets the mp3 files and converts them to wav
File mp3folder = new File(MP3FOLDER);

String[] mp3s = mp3folder.list();

File f;

String s;

for(int i = 0; i < mp3s.length; i++) {
f = new File(mp3s[i]);
s = ("ffmpeg -i " + MP3FOLDER + "\\" + f.getName() + " " + (MP3FOLDER + "\\" + f.getName()).replaceAll("MP3", "WAV").replaceAll("mp3", "wav"));
Runtime.getRuntime().exec(s);
System.out.println("test");
}



}

}

编辑 :

所以我从来没有让Java使用PATH,而是在Java中添加了ffmpeg可执行文件的绝对路径。

最佳答案

我必须添加 ffmpeg bin 的路径,包括文件名 ffmpeg.exe,而不是让 Java 依赖 Windows 中的 PATH 变量,即使 ffmpeg 在 CMD 窗口中正常工作。

关于java - 无法通过Java运行命令,但可以通过cmd运行 CreateProcess error=2, 系统找不到指定的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55205010/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com