Re: How to convert one text file into one large String?
On Fri, 5 Mar 2010, Tom Anderson wrote:
On Thu, 4 Mar 2010, Arne Vajh?j wrote:
On 04-03-2010 21:03, Roedy Green wrote:
On Thu, 04 Mar 2010 16:54:59 -0500, www<www@nospam.com> wrote, quoted
or indirectly quoted someone who said :
I searched all the methods in File.java(from Sun) and
FileUtils.java(from Apache) and could not find it.
see http://mindprod.com/products1.html#HUNKIO
for the source code
Given that a one liner using only standard Java API has been posted, then
there are no need.
Just for fun, here's a two-liner, where f is a File:
byte[] buf = new byte[(int)f.length()];
new DataInputStream(new FileInputStream(f)).readFully(buf);
Although of course that gets you a byte array, not a String. My bad. The
full answer is a three-liner:
String s = new String(buf, "UTF-8"); // or whatever charset you like
Although this involves using N bytes of memory for the buffer and up to 2N
bytes for the string at the same time, if only briefly. There should be a
way to do it that just involves storing 2N bytes, and perhaps Scanner does
this.
tom
--
A TEN PINTS