java - 创建没有完整文件路径的文件 - java
问题描述
我正在尝试使用文件库来创建文件实例,以便我可以播放其中的音频,我的问题是如果我切换我正在使用的计算机,我必须将文件路径切换到相应的计算机有没有办法制作新文件时不使用完整路径?
public class Main {
public static String[] pathnames;
public static void main(String[] args) {
String FilePaths;
File[] fileList = new File[5];
//Finds the music file
File musicFile = new File("C://Users/ranvi/IdeaProjects/SpotifyRemake/src/Particle/Spotify/Music/Heartless.wav");
File musicFile1 = new File("C://Users/ranvi/IdeaProjects/SpotifyRemake/src/Particle/Spotify/Music/Life Is Good.wav");
File musicFile2 = new File("C://Users/ranvi/IdeaProjects/SpotifyRemake/src/Particle/Spotify/Music/Panini.wav");
File musicFile3 = new File("C://Users/ranvi/IdeaProjects/SpotifyRemake/src/Particle/Spotify/Music/ROXANNE.wav");
File musicDir = new File("/Users/ranvi/IdeaProjects/Spotify/src/com/company/Music");
//Calls the method PlaySound
PlaySound(musicFile);
}
解决方案
是的,通过命令行参数;当您通过 java -jar {jarname} 调用您的 jar 时,您可以传递一些参数,如下所示:
java -jar myapp.jar 参数_1,参数_2,参数_3。
在这种情况下,在主要方法的 args 数组中,将有 3 个字符串{“argument_1”、“argument_2”、“argument_3”}
您可以使用这种方式传递文件夹路径,如下所示:
public class Main {
public static String[] pathnames;
public static void main(String[] args) {
String FilePaths;
File[] fileList = new File[5];
//Finds the music file
File musicFile = new File(args[0], "Heartless.wav");
File musicFile1 = new File(args[0], "Life Is Good.wav");
File musicFile2 = new File(args[0], "Panini.wav");
File musicFile3 = new File(args[0], "ROXANNE.wav");
File musicDir = new File(args[1]);
//Calls the method PlaySound
PlaySound(musicFile);
}
并像这样运行您的应用程序:
java -jar myapp.jar "C://Users/ranvi/IdeaProjects/SpotifyRemake/src/Particle/Spotify/Music/" "C://Users/ranvi/IdeaProjects/Spotify/src/com/company/Music"
推荐阅读
- regex - 带有连字符的字母数字序列无法使用 Go 的正则表达式
- java - 在使用它们影响的数据之前,我是否必须确保在 Java 中手动加载类?
- python - os.replace 在 Windows 上的例外与在 Linux (Ubuntu) 上没有例外
- python - 代码在 Python 中运行后如何让 Chrome 测试浏览器不关闭?
- python - Django - 无法从输入字段中获取值
- python - 当我尝试在 Colab 上修改加载的 LSTM 模型参数时出现属性错误
- r - A组随机变量大于B组的概率
- python - 名称“播放器”未定义且
游戏=游戏() - google-chrome-extension - 是什么触发扩展程序说“通过单击此图标来使用此扩展程序”
- ios - Flutter iOS 无法使用麦克风,permission_handler 有问题