我有很多像這樣的數據庫字符串:"\\LDDESKTOP\news\1455Bloomberg Document # 180784.txt"
。我想在最後一個斜槓後獲得文件名。我應該如何從str中獲取此特定文本?
我這樣做只是在一個正常的方式:
str.substring(str.lastIndexOf("\\")+1)
但因爲單斜槓是用於改變含義這是行不通的。 java中有沒有像Python一樣告訴編譯器把它看作一個普通的字符串,如str=r'.......'
。
或者如何將字符串更改爲"\\\\LDDESKTOP\\news\\1455Bloomberg Document # 180784.txt"
。所以我可以將它傳遞給File Object來讀取這個文件。
我應該怎麼做?或以其他方式解決這個問題。
謝謝。在新聞臺
列命名路徑(VARCHAR(150))就是這樣「\ LDDESKTOP \新聞\ 1362Bloomberg文檔#180691.txt」
我做一個正常的選擇路徑上。
代碼:
public List<String> getNewsFileName(String startTime,String endTime) {
List<String> newsFileNames = new ArrayList<String>();
String tableName = ConfigFile.getConfig("configuration.txt","SQLServerTable");
String sql = "select Path from [" + tableName + "] where localtime >= '" + startTime + "' and localtime <= '" + endTime + "'";
try {
if(connection==null) {
InvertedIndex.logger.log(Level.SEVERE, "Database connection has not been initialized");
System.exit(-1);
}
stmt=connection.createStatement();
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()) {
String path=rs.getString(1);
newsFileNames.add(path);
}
} catch (SQLException e) {
InvertedIndex.logger.log(Level.SEVERE,"Fail to store news");
}
return newsFileNames;
}
如果你System.out.println(newsFileNames);在你回來之前,這會給你什麼?它應該是某種列表。我只是無法單獨根據該代碼告訴實際輸出。 – MrHappyAsthma 2012-08-09 04:26:37
只是一個像這樣的字符串列表:「\\ LDDESKTOP \ news \ 1455Bloomberg Document#180784.txt」,單斜槓而不是雙。 – xuqin1019 2012-08-09 04:31:03
那麼你在問如何修改每個字符串以使所有雙反斜槓? – MrHappyAsthma 2012-08-09 04:31:40