我想要实现一个程序,可以把安装软件从内存卡移到SD卡,或者反过来求代码  或者给个全面点的思路万分感激啊

解决方案 »

  1.   

    可以把安装软件从内存卡移到SD卡指得是将安装的apk的一些相关数据包放到外置sd卡中  并不是将整个apk移到上面地方   数据包位置在data/xxx/apk包名   将这个apk报名数据移到sd卡而已    用一个输入  输出流就搞定了
      

  2.   

    谢谢您解决了我思路的问题, 但是我在查找文件夹下面的子文件夹时else if (source.exists() && source.isDirectory())
    {
    if (!destin.exists())
    {
    destin.mkdirs();
    System.out.println(destin);
    }
    // 保存下级目录各文件文件名
    String[] filename = source.list(); <--------filename为null,如何文件夹大于一个就空指针
    File[] files = new File[filename.length];
    for (int i = 0; i < filename.length; i++)
    {
    files[i] = new File(source + "/" + filename[i]);
    if (files[i].isFile())
    {
    br = new FileInputStream(files[i]);
    bw = new FileOutputStream(new File(destin + "/"
    + filename[i])); byte[] ch = new byte[1024 * 4];
    int len = 0;
    System.out.println("*在复制:" + files[i] + "\n到" + destin
    + "/" + filename[i]);
    while ((len = br.read(ch)) != -1)
    {
    bw.write(ch, 0, len);
    } }
    else
    {
    // 如果下级目录中文件是文件夹则递归复制
    directory_Copy(files[i], new File(destin + "/" + filename[i]));
    }
    }

    }