如何替換字符串的目錄路徑? 原始字符串:通過操縱字符串替換目錄路徑 - Java
String fn = "/foo/bar/ness/foo-bar/nessbar.txt";
我需要的輸出看起來像:
/media/Transcend/foo-bar/nessbar.txt
我已經試過線之下,但它不工作
fn.replaceAll("/foo/bar/ness", "/media/Transcend");
如何替換字符串的目錄路徑? 原始字符串:通過操縱字符串替換目錄路徑 - Java
String fn = "/foo/bar/ness/foo-bar/nessbar.txt";
我需要的輸出看起來像:
/media/Transcend/foo-bar/nessbar.txt
我已經試過線之下,但它不工作
fn.replaceAll("/foo/bar/ness", "/media/Transcend");
你忘了重寫變量:
String fn = "/foo/bar/ness/foo-bar/nessbar.txt";
fn = fn.replaceAll("/foo/bar/ness", "/media/Transcend");
試試這個:
fn = fn.replaceAll("/foo/bar/ness", "/media/Transcend");
replaceAll
方法返回一個新的String
對象,使原始對象保持不變。這就是爲什麼你需要在某個地方分配結果的原因,例如,在同一個變量中。
的replaceAll有點不爲我工作,無法弄清楚,爲什麼,我結束了這樣的事情,雖然只替換路徑的第一部分。
String fn = "C:/foo/bar/ness/foo-bar/nessbar.txt";
Strign r = "C:/foo/bar/ness";
fn = "C:/media/Transcend" + fn.substring(r.length());
如果你不打算使用正則表達式,不要使用'replaceAll',使用'replace'來完成同樣的工作。但是,對於這個問題,你最終可能會做'File'對象而不是字符串操作。 – dacwe 2012-01-29 17:44:21
@Tom,你確實知道這個問題比你鏈接爲重複的問題要舊得多,對嗎? – alvas 2016-12-29 14:51:26
@alvas你知道這不重要嗎? – Tom 2016-12-29 15:56:26