Yes, this is fine, until you try to convert the output to a String,
which was what I needed until I took the approach I mentioned in my
reply to Kostya.

On Apr 5, 1:12 am, Vo Trung Liem <[email protected]> wrote:
> Follow the code may will help you.
>
> URL url = new URL(path);
>
>             URLConnection cn = url.openConnection();
>             cn.connect();
>             InputStream stream = cn.getInputStream();
>
>             if (stream == null)
>                 throw new RuntimeException("stream is null");
>
>             if (BTAG)
>                 Log.d(TAG, TAG + " File temp" +
> audios_local[currentPosition]);
>             FileOutputStream out = new FileOutputStream(temp);
>             byte buf[] = new byte[128];
>             do {
>                 int numread = stream.read(buf);
>                 if (numread <= 0)
>                     break;
>                 out.write(buf, 0, numread);
>             } while (true);
>             try {
>                 stream.close();
>             } catch (IOException ex) {
>                 if (BTAG)
>                     Log.d(TAG, TAG + " " + ex.toString());
>
>             }
>
> I can read file bigger than 5MB.
>
> 2012/4/5 Kostya Vasilyev <[email protected]>
>
>
>
>
>
>
>
> > Perhaps your base64 encoded data doesn't contain line breaks, or contains
> > too few of them?
>
> > Causing the readline() to try and read the entire 5 MB (or a large portion
> > of it) in memory?
>
> > For email content (since you mentioned K9) it's common to line-wrap base64
> > data at some reasonable line size, like 76 characters (you know, many
> > people still use DOS, even in this day and age).
>
> > The same principle could apply to web data.
>
> > Besides, line breaks do not have any significance for base64 encoded data
> > (unlike, e.g. quoted-printable, or format-flowed text/plain), so you could
> > just ignore the line structure.
>
> > I'm sure there is piece of code somewhere in K9 sources that can decode
> > base64 data on the fly without excessive buffering.
>
> > There is also this:
>
> >http://developer.android.com/reference/android/util/Base64InputStream...
>
> > ... which is part of Android starting with API 8, but hey, the sources are
> > only a few clicks away.
>
> > -- K
>
> > 4 апреля 2012 г. 22:27 пользователь FractalBob <[email protected]>написал:
>
> >> On Apr 4, 8:48 am, TreKing <[email protected]> wrote:
> >> > On Wed, Apr 4, 2012 at 10:38 AM, FractalBob <[email protected]> wrote:
> >> > > The data, a kind of mail attachment, is a music file
>
> >> > Why are you reading lines from this data then?
>
> >> The data is coming in Base 64 encoded from the Web app and then passed
> >> directly to the processing application. This scheme works fine for all
> >> known types of data
> >> > > and is eventually loaded into an MP3 player.
>
> >> > What does that mean?
>
> >> >  I can't simply point the player to the file, unfortunately; too much
>
> >> > > legacy code.
>
> >> > Not sure what that means.
>
> >> My app is based on the K9 Mail mail client and it expects the data
> >> delivered to its providers in a certain format.
>
> >> ---------------------------------------------------------------------------
> >> ----------------------
> >> > TreKing <http://sites.google.com/site/rezmobileapps/treking> - Chicago
> >> > transit tracking app for Android-powered devices
>
> >> --
> >> You received this message because you are subscribed to the Google
> >> Groups "Android Developers" group.
> >> To post to this group, send email to [email protected]
> >> To unsubscribe from this group, send email to
> >> [email protected]
> >> For more options, visit this group at
> >>http://groups.google.com/group/android-developers?hl=en
>
> >  --
> > You received this message because you are subscribed to the Google
> > Groups "Android Developers" group.
> > To post to this group, send email to [email protected]
> > To unsubscribe from this group, send email to
> > [email protected]
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en

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

Reply via email to