2012-02-04 93 views
0
public class saveButtonListener implements ActionListener{ 
     public void actionPerformed(ActionEvent ev){ 
     JFileChooser chooser= new JFileChooser(); 

      String s=(String)searchedResultArea.getSelectedValue();// ??? 
    } 
    } 
    Object s=searchedResultArea.getSelectedValue(); 

我開發了一個程序,用於保存用戶在文件中指定的一些圖片的文件名,並將它們顯示在JList中。我已將它們保存爲這種格式如何將字符串轉換爲文件名稱

E:\something\something\something.jpg 

現在我需要使用該值打開該圖片。我的問題是,我不能這個字符串轉換成適當的文件命名將Java使用像

E:\\something\\something\\something.jpg 

我希望你得到了點。我需要兩個反斜槓。我該怎麼做?

回答

3

「\」用於轉義源代碼中的「\」字符。 Windiows上的路徑分隔符仍然是「\」。如果你有從用戶輸入的路徑,那麼在這裏沒有什麼可做的。

5

您不需要將其轉換爲任何東西。字符串很好,只有一個斜線。只有在代碼中手動輸入斜線時才需要第二個斜槓。

-1

這是不是工作:

String fileName = // from JList 
File f = new File(fileName); 
+0

檔案文件=新的文件(searchedResultArea.getSelectedValue());我試過,但這不起作用。我應該使用哪種方法? – 2012-02-04 21:41:41

2

在Java中,表示文件名的正確方法是「向前」斜槓(「/」),並且將獨立操作系統的工作。 「反斜槓」('\')是一種Windows異常,在Java中處理文件時應該忽略它。

所以,只需使用「正斜槓」即可。

要轉換的文件名,做

filename = filename.replaceAll("\\", "/"); 

(需要雙反斜線,因爲單反斜線在Java中使用轉義特殊字符)

相關問題