Java 应用程序在 Debian 上打开和播放媒体错误
Posted
技术标签:
【中文标题】Java 应用程序在 Debian 上打开和播放媒体错误【英文标题】:Java application open and play media error on Debian 【发布时间】:2016-09-06 17:45:00 【问题描述】:我目前正在开发一个应用程序,我用 Java 编写了它。它正在将一些媒体文件下载到本地计算机并使用名为Desktop.getDesktop().open(file);
的Java 方法打开它在Windows 上运行良好,但在debian 上运行不正常。
这里使用的是从url下载的方法:
public String DownloadFromUrlAndGetPath(String DownloadUrl)
String fileName="";
try
URL url = new URL(DownloadUrl);
URLConnection ucon = url.openConnection();
String raw = ucon.getHeaderField("Content-Disposition");
// raw = "attachment; filename=abc.mp3"
if(raw != null && raw.indexOf("=") != -1)
fileName = raw.split("=")[1]; //getting value after '='
fileName = fileName.replace("\"", "").trim();
else
return "";
File file = new File(Paths.get(System.getProperty("user.home"), "MyFolderToSaveFiles") +"/"+ fileName);
InputStream is = ucon.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
ByteArrayBuffer baf = new ByteArrayBuffer(5000);
int current = 0;
while ((current = bis.read()) != -1)
try
baf.append((int)((byte)current));
continue;
catch (Exception var12_13)
FileOutputStream fos = new FileOutputStream(file);
fos.write(baf.toByteArray());
fos.flush();
fos.close();
catch (IOException e)
e.getMessage();
return Paths.get(System.getProperty("user.home"), "MyFolderToSaveFiles") +"/"+ fileName;
然后我想这样打开那个文件:
File f = new File(url);
Desktop.getDesktop().open(f);
错误提示;
有什么建议吗?谢谢
【问题讨论】:
您可以使用Files.copy 方法大大缩短您的下载代码。 【参考方案1】:我使用 this 解决了这个问题,所以当我打开文件时,我使用的是 xdg-open..
【讨论】:
以上是关于Java 应用程序在 Debian 上打开和播放媒体错误的主要内容,如果未能解决你的问题,请参考以下文章