我有以下代码:
InputStream input=null;
OutputStream output=null;
HttpURLConnection connection=null;
try{
URL url=new URL(strings[0]);
connection= (HttpURLConnection) url.openConnection();
connection.connect();
int filelen=connection.getContentLength();
input=connection.getInputStream();
filechache();
output=new FileOutputStream(android.os.Environment.getExternalStorageDirectory()+"/nikandroid/"
+strings[1]+".mp3");
byte data[]=new byte[4096];
long total=0;
int count;
while((count=input.read(data))!=-1){
total+=count;
if (filelen>0) publishProgress((int)(total*100/filelen));
output.write(data,0,count);
}
}catch (Exception e){
e.printStackTrace();
}finally {
try{
if (output!=null) output.close();
if (input!=null) input.close();
}catch (IOException e){
e.printStackTrace();
}
if (connection!=null) connection.disconnect();
}
return null;
答案 0 :(得分:0)
每个应用程序在内部存储中都有一个私人目录。该目录的内容只能由应用程序读取和写入。目录是
/data/data/<yourPackageName>
您可以访问应用程序目录中的各种专用目录,如下所示:
context.getFilesDir()
返回/data/data/<yourPackageName>/files
context.getCacheDir()
返回/data/data/<yourPackageName>/cache
外部/共享内部存储可能有类似的目录,但这超出了问题的范围。