萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 安卓開發 >> 安卓程序raw文件放在sd卡代碼實例

安卓程序raw文件放在sd卡代碼實例

   void copyAssets()

  {

  String[] files;

  try

  {

  files = this.getResources().getAssets().list("");

  }

  catch (IOException e1)

  {

  return;

  }

  if(!mWorkingPath.exists())

  {

  if(!mWorkingPath.mkdirs())

  {

  new AlertDialog.Builder(this)

  .setTitle(R.string.ERROR)

  .setMessage(R.string.FAILED_DIR_CREATE)

  .setPositiveButton(android.R.string.ok, new OnClickListener(){

  @Override

  public void onClick(DialogInterface dialog, int which)

  {

  dialog.dismiss();

  }

  })

  .create()

  .show();

  }

  }

  for(int i = 0; i < files.length; i++)

  {

  try

  {

  String fileName = files[i];

  if(fileName.compareTo("images") == 0 ||

  fileName.compareTo("sounds") == 0 ||

  fileName.compareTo("webkit") == 0)

  {

  continue;

  }

  File outFile = new File(mWorkingPath, fileName);

  if(outFile.exists()) continue;

  InputStream in = getAssets().open(fileName);

  OutputStream out = new FileOutputStream(outFile);

  // Transfer bytes from in to out

  byte[] buf = new byte[1024];

  int len;

  while ((len = in.read(buf)) > 0)

  {

  out.write(buf, 0, len);

  }

  in.close();

  out.close();

  }

  catch (FileNotFoundException e)

  {

  e.printStackTrace();

  }

  catch (IOException e)

  {

  e.printStackTrace();

  }

  }

copyright © 萬盛學電腦網 all rights reserved