0

此处提出了一个相关问题, 将文件从 nanohttpd 的临时目录上传到 SD 卡

参考提问者要求将 nanohttpd 上传的文件复制到外部 sd 卡。但是,如果我们希望在内部存储中拥有上传文件的副本,我们该怎么做呢?(例如系统根据设备偏好分配是 sdcard 还是内部存储)

问题的作者确实找到了一种从 nanohttpd 服务器复制上传文件的类方法(使用简单的类方法从特定目录复制到特定目录)https://stackoverflow.com/a/4770586/1673000

但是,我们应该如何以及在哪里实施这些代码?(考虑到正确的方法)

  • 我们应该将此代码实现到 nanohttpd 源文件中吗?(eg NanoHttpd.java) 如果是这样,我们如何将代码实现到主类文件中。
  • 我们是否能够在不修改的情况下保持 nanohttpd.java 源文件的完整性,并将这个特定功能添加到另一个类文件中?(例如,另一个类文件“扩展 NanoHTTPD”并解析了一些示例 HTML 代码)或者就具有干净的设计结构而言,推荐的程序是什么?

旁注:我希望可以在 nanohttpd 操作完成后直接复制文件,但在 nanohttpd 关闭后,临时文件总是会立即被删除。

谢谢阅读

4

1 回答 1

0

要将上传的文件移动到内部/外部存储,您需要做的就是:

  1. 实现 TempFileManagerFactory
  2. 实现 TempFileManager
  3. 实现 TempFile
  4. 最后创建服务器后,调用

server.setTempFileManagerFactory(new FileFactory());

  1. 获取上传文件的文件名

映射文件 = new HashMap();

session.parseBody(文件);

Log.d(TAG, files.toString());

  1. 然后就可以访问文件了
于 2014-12-11T17:19:19.330 回答