Вы можете сначала разбить строку на «/», чтобы вы могли разделить каждую папку и имя файла. В этом примере у вас будут «ядро», «страницы» и «viewemployee.jsff». Я предполагаю, что вам нужно имя файла без расширения, поэтому просто примените одно действие с разделом «.». отделителя до последнего токена. У вас будет имя файла без расширения.
String myStr = "core/pages/viewemployee.bak.jsff";
String[] tokens = myStr.split("/");
String[] fileNameTokens = tokens[tokens.length - 1].split("\\.");
String fileNameStr = "";
for(int i = 0; i < fileNameTokens.length - 1; i++) {
fileNameStr += fileNameTokens[i] + ".";
}
fileNameStr = fileNameStr.substring(0, fileNameStr.length() - 1);
System.out.print(fileNameStr) //--> "viewemployee.bak"
Это "политика одинакового происхождения" в интерпретации Chrome (или ошибка с тем же эффектом). Попробуйте запустить Chrome с --allow-file-access-from-files
.
Ни --disable-web-security
, ни --allow-file-access-from-files
не работали для меня, хотя я обнаружил, что использование «127.0.0.1» вместо «localhost» решило проблему.