2010-06-08 57 views
1

如何在JavaFX中訪問我的計算機上的本地媒體文件?如何在JavaFX中訪問我的計算機上的本地媒體文件?

這裏是我試過的網址:

C:/PROJECT/videos/on2tm_352.flv
file:///C://PROJECT/videos/on2tm_352.flv(在一些網站建議忘記在哪裏)

但它確實演的時候,我用把項目的文件夾,並訪問其內部的媒體文件{__DIR__}/on2tm_352.flv

注意:沒有輸出異常和錯誤。屏幕只是空白。

KLite編解碼器583兆,JavaFX的1.2,Netbeans的6.8用於

回答

1

通過給自己的URL到媒體?

請注意,過去有報道過路徑空間的一些問題,我不知道它是否仍然如此。

[EDIT以下原始消息編輯(URL的例子)]
第一行是不是一個URL,它是一個路徑。顯然,媒體播放器接受URL作爲路徑,但ImageView並非如此,所以最好嚴格一點。
第二行是正確的。
第三行有一個潛在的問題:__DIR__變量已經有一個終端斜槓,所以你不應該添加它,即。改爲寫{__DIR__}on2tm_352.flv。不知道這是否是問題(我還沒有使用過多的視頻),但值得嘗試。

請注意,一旦項目打包,此URL(基於__DIR__)將指向jar文件。 在JavaFX 1.2中可以,但由於某些奇怪的原因,他們選擇在1.3中禁止這種訪問。

+0

我提供的網址沒有空格。仍然不會工作 – cancelledout 2010-06-10 17:24:23

+0

@cancelledout:什麼網址?只要你保持模糊,答案將是通用的......你有錯誤嗎?您的媒體文件是否支持格式? – PhiLho 2010-06-11 15:49:05

+0

這就是: 我想: C:/PROJECT/videos/on2tm_352.flv 文件:/// C://PROJECT/videos/on2tm_352.flv(在一些網站建議忘記在哪裏) 它但是,當我將媒體文件放入項目文件夾並使用{__DIR __}/on2tm_352.flv 訪問它時,不會出現例外和錯誤輸出。屏幕只是空白。 KLite Codec 583 Mega,JavaFX 1.2,Netbeans 6.8被使用。 – cancelledout 2010-06-15 01:17:46

1

我發現使用磁盤文件進行以下操作更容易。這減輕了我確定的所有規則的微弱腦「文件:」網址:

var file = new File("C:/PROJECT/videos/on2tm_352.flv"); 

Media { 
    source: "{file.toURI()}" 
} 

我避免使用{__DIR__}媒體,因爲它可以指向一個「罐子」的網址,並且不再支持的介質位置在JavaFX 1.3中。

+0

謝謝你的回答。因此,如果{__DIR__}不受支持,那麼我如何才能在jar中訪問這些文件呢? – cancelledout 2010-07-01 10:43:57

+0

只需要明確{__DIR__}即可。不支持的是從Jar文件加載媒體文件。所以,如果{__DIR__}指向一個jar文件,媒體將不會加載。有關解釋,請參閱http://www.javafx.com/faq/#5.3。 – JimClarke 2010-07-06 11:53:14

2

嘗試了這一點:

Media media = new Media(trackFile.toURI().toURL().toString()); 
MediaPlayer mediaPlayer = new MediaPlayer(media); 
5

這是工作,現在對我來說:

private static final String MEDIA_URL = "file:/c:/Users/Alejandro/Downloads/oow2010-2.flv"; 

我測試了它在幾分鐘前....

或類似的東西:

private File file = new File("c:/Users/Alejandro/Downloads/oow2010-2.flv"); 
private final String MEDIA_URL = file.toURI().toString(); 

請參閱你以後= d

0

你們只需要指定該文件的路徑爲URI路徑:

Media media = new Media("file:///C:/Users/David/Downloads/test.flv"); 
MediaPlayer mediaPlayer = new MediaPlayer(media); 

它不是必需的在所有實例文件。

相關問題