上传端:while ((length = fis.read(xml, 0, xml.length)) > 0) {                  sumL += length;                 //   System.out.println("已传输:"+((sumL/l)*100)+"%");                  os.write(xml, 0, length);                  os.flush();              }   


下载端:


File file = new File("F:/Cloud Disk/"+name);FileOutputStream fos = new FileOutputStream(file);                        while ((length = is.read(bt, 0, bt.length)) > 0) {                  fos.write(bt, 0, length);                  fos.flush();                  }  

通过read的返回值返回的长度,决定fos往文件里写入的长度,每执行过一次read,指针是会自动向后移动的,利用大小合适的字节数组bt,利用while循环一次次的读取是最为合适的,而不应该像我以前想象的用一个大字节数组一口气传过来,唉,毕竟naive,太年轻,少年郎~~


多总结,以后会进步的。目前的问题就在于如何解决filechooser。


话说我又发现可以在发送文件本体之前发送一行以\n结尾的文件名。

在接受端可以先readline,获取文件名,再依据文件名创建文件,传送文件实体。

我真是越来越6了。233333

更多相关文章

  1. Android(安卓)HDecoration项目so库导出和调用
  2. Android经常使用UI组件 - TextView
  3. Tinker热修复简单接入
  4. Android(安卓)XMl文件存储及其解析
  5. 如何在xml中直接添加view点击监听(参考rayleung博客)
  6. Android实现侧滑菜单
  7. android keystore文件转换格式为pk8和x509.pem
  8. Android(安卓)一次启动多个Activity (TaskStackBuilder)
  9. Android常见UI组件之ListView(二)——定制ListView

随机推荐

  1. Android(安卓)camera 默认显示黑白的问题
  2. Android怎么在控制台输出语句
  3. Android中的ThreadLocal源码解析
  4. ANDROID源代码结构
  5. Android(安卓)Contact分析(一):Data, RawCon
  6. apk,task,android:process与android:shared
  7. Android(安卓)官方示例:android-architect
  8. Android简明开发教程二十三:发布应用
  9. 自定义Spinner五步走
  10. 【Android(安卓)Developers Training】 4