2014-01-05 1 views
2

У меня есть приложение для Android, которое использует NanoHTTPD для обслуживания контекста HTML. Я использую NanoHTTP 2.0.5 в моем приложении.NanoHTTPD 2.0.5 с загрузкой файла с пробелами в имени файла

Возникла проблема с загрузкой файлов. Предположим, что я загружаю файл с именем kr d.mp4; он загружается, но переименовывается в k (начиная с одного символа перед пробелом до последнего символа в имени файла, включая расширение).

Любая загрузка файла с номером пространство показывает это поведение. Я попробовал другое имя файла:

ORIGINAL   GOT THIS 
----------------------------- 
NO_SPACE.TXT  NO_SPACE.TXT (works as expected) 
ABC DEF.txt  AB 
AB1234 gf.txt  AB123 
A D.txt   Failed to upload ??? 

Как исправить эту проблему?

ответ

1

Я получил эту работу с помощью из IRC канала # Android-DEV пользователя: memoryleak. Это была проблема, связанная с кодировкой.

Чтобы исправить это сделать при загрузке на:

на стороне клиента (Javascript):

formdata.append("filedata", file, encodeURIComponent(file['name'])); 

Server Side (NanoHTTPD):

URLDecoder.decode(session.getParms().get(entry.getKey()), "UTF-8"); 

 Смежные вопросы

  • Нет связанных вопросов^_^