2010-01-11 3 views
1

Приносим извинения, если это слишком простой вопрос, я не смог выполнить его, так как он не хотел искать% 20.Java: поддерживает ли FileReader поиск файлов с использованием строк с% 20?

Если у меня есть URL-адрес, по которому я использую метод getFile(), чтобы получить путь к файлу, который я хотел бы открыть для обработки. Если конкретный файл находится в каталоге, содержащем пробелы, возвращенный путь содержит% 20, где должно быть место.

Будет ли FileReader иметь возможность использовать путь, как предусмотрено, или мне нужно будет заменить% 20 ​​пробелом?

ответ

3

Вам нужно будет использовать URLDecoder себя. FileReader просто использует строку, которую он передал, и это правильно -% 20 - это вполне допустимая последовательность символов в имени файла, и если она была автоматически преобразована, вы не смогли бы получить доступ к файлам, содержащим ее.

2

Используйте URLDecoder.decode() декодировать путь

1

Если вы загрузили файл и сохранили его в локальной файловой системе. И вы используете FileReader читать его как

FileReader fr = new FileReader(new File(url.getFile())); 

Да Файл может понять кодировку URL. Поэтому вам не нужно его расшифровывать. Если вы расшифровали его, как предложили другие, оно будет более читаемым, если вы напечатаете путь к файлу.