I already answered this question twice today.

On Mon, Jan 26, 2009 at 9:18 PM, parth Chothani
<parth.india...@gmail.com> wrote:
> I am downloading a audio file from server on sd card. It is showing me
> OutOfMemoryException.
>
> This is my code..
> ---------------------------
> package com.android;
>
> import java.io.BufferedInputStream;
> import java.io.FileOutputStream;
> import java.io.IOException;
> import java.io.InputStream;
> import java.net.URL;
> import java.net.URLConnection;
>
> public class MainClass {
>
>   public MainClass() throws Exception
>   {
>
>     URL u = new URL("http://----------";);
>     URLConnection uc = u.openConnection();
>     String contentType = uc.getContentType();
>     int contentLength = uc.getContentLength();
>     if(contentLength < Integer.MAX_VALUE)
>     {
>
>     }
>     if (contentType.startsWith("text/") || contentLength == -1) {
>       throw new IOException("This is not a binary file.");
>     }
>     InputStream raw = uc.getInputStream();
>     InputStream in = new BufferedInputStream(raw);
>     byte [] data=new byte[(int)contentLength];
>     //byte[] data1 = new byte[contentLength/2];
>     int bytesRead = 0;
>     int offset = 0;
>     while (offset < contentLength)
>     {
>
>       bytesRead = in.read(data, offset, data.length - offset);
>       if (bytesRead == -1)
>         break;
>       offset += bytesRead;
>     }
>     in.close();
>
>     /*if (offset != contentLength) {
>       throw new IOException("Only read " + offset + " bytes; Expected " +
> contentLength + " bytes");
>     }*/
>
>
>    // String filename = u.getFile().substring(filename.lastIndexOf('/') +
> 1);
>     FileOutputStream out = new FileOutputStream("/sdcard/music.mp3");
>     out.write(data);
>     out.flush();
>     out.close();
>   }
> }
>
>
>
> The error is at this line:
> byte [] data=new byte[(int)contentLength];
> This is because the size of the contentLength 16987867
> ------------
>
>
> I am trying since long and stuck up here..
> How to solve this exception? Pls help
>
>
>
>
>
> >
>



-- 
Romain Guy
Android framework engineer
romain...@android.com

Note: please don't send private questions to me, as I don't have time
to provide private support.  All such questions should be posted on
public forums, where I and others can see and answer them

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to