Я думаю, что вы хотите удалить последние пять символов ('.', 'N', 'u', 'l', 'l'):
path = path.substring(0, path.length() - 5);
Обратите внимание, как вам нужно использовать возвращаемое значение - строки неизменны, поэтому substring
(и другие методы) не изменяют существующую строку - они возвращают ссылку на строку new с соответствующими данными.
Или, чтобы быть немного более безопасным:
if (path.endsWith(".null")) {
path = path.substring(0, path.length() - 5);
}
Однако я бы попытался решить проблему выше.Я предполагаю, что у вас есть только «.null», потому что какой-то другой код делает что-то вроде этого:
path = name + "." + extension;
, где extension
равно нулю.Вместо этого я бы обусловил это, чтобы вы никогда не получили неверные данные.
(Как отмечается в комментарии к вопросу, вам действительно следует просмотреть String
API .один из наиболее часто используемых классов в Java, поэтому нет никаких оправданий тому, что он не знаком с ним.)