Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Java > getBytesUTF8Encoded

Reply
Thread Tools

getBytesUTF8Encoded

 
 
jeanlutrin@yahoo.fr
Guest
Posts: n/a
 
      03-02-2005
Hi all,

To obtain a byte[] in the UTF-8 encoding from a String
object, I use a getBytes("UTF-8").

This is cumbersome...

Firstly, it is error prone (I mistakenly wrote "UTF-9"
just today, which more or less decided me to post this
message).

Secondly, I'm forced to catch an "unsupported encoding"
exception. Which is completely dumb, as every J2SE JVM
is forced, by the specs, to offer the UTF-8 encoding.

So, I'd like to have a method getBytesUTF8Encoded() in
the String class. Without parameter, without the need
to catch a non-sense exception (a method returning
directly "UTF-8", without needing to pass a prone-to-
error string parameter, would not be able to throw
an UnsupportedEncodingException).

So:

getBytesUTF8Encoded()
getUTF8Bytes()

Whatever.

But something else than the current cumbersome and
prone to error getBytes("UTF-8") throwing a phantom
UnsupportedEncodingException.

Your thoughts on this?

Jean



P.S: I'm not against adding getBytesISOLatin1() method
etc., as long as it's for encoding *mandatory by the
specs* to be in the JVM.

 
Reply With Quote
 
 
 
 
Thomas Weidenfeller
Guest
Posts: n/a
 
      03-03-2005
http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
> So, I'd like to have a method getBytesUTF8Encoded() in
> the String class.


http://jcp.org/

Good luck,

/Thomas

--
The comp.lang.java.gui FAQ:
ftp://ftp.cs.uu.nl/pub/NEWS.ANSWERS/...g/java/gui/faq
 
Reply With Quote
 
 
 
 
Antti S. Brax
Guest
Posts: n/a
 
      03-03-2005
(E-Mail Removed) wrote in comp.lang.java.programmer:
> To obtain a byte[] in the UTF-8 encoding from a String
> object, I use a getBytes("UTF-8").


> Firstly, it is error prone (I mistakenly wrote "UTF-9"
> just today, which more or less decided me to post this
> message).


Well, if you're worried about your ability to write string
constants correctly why don't you use constants for your
strings?

public static final String UTF8 = "UTF-8";
...
str.getBytes(UTF;

Compiler will take care of typos for you (as long as you make
sure you've written the constant correctly.

Also, if that typo was hard to find then there is something
wrong with your program design. Do you write tests for your
code at all?

> So, I'd like to have a method getBytesUTF8Encoded() in
> the String class.


Write a helper class with a static method that does what you
need. It is trivial.

--
Antti S. Brax Rullalautailu pitää lapset poissa ladulta
http://www.iki.fi/asb/ http://www.cs.helsinki.fi/u/abrax/hlb/
"Disconnect this cable to shorten, re-connect to lengthen."
-- Instructions on Logitech's USB mouse extension cord.
 
Reply With Quote
 
jeanlutrin@yahoo.fr
Guest
Posts: n/a
 
      03-04-2005
Thanks for your kind answer.

>... if you're worried about your ability to write string
> constants correctly...


no, you're oversimplifying what I explained in details.

I'm not "worried about my ability to write string constants
correctly", but thanks for the concern.


> Also, if that typo was hard to find then there is something
> wrong with your program design. Do you write tests for your
> code at all?


Woaw.

At first look, that paragraph contains at least two logical fallacies
(first hint: I never said the typo was hard to find; second
hint: you're trying to shift the discussion on program design).

But, on a second look, you weren't really asserting anything: it
was just a question! Which, ironically, the way you formulated
it, makes it possible to easily name /three/ logical fallacies
contained in a single, short, paragraph.

If you want to talk about "program design", shall we discuss
the logic behind having to catch an impossible exception?

What do you think about being forced to catch an exception that
is, by the specs, impossible to happen?

Because, you know, quite frankly I don't know which is more
absurd between having to catch an exception that can never
happen or Logitech's USB mouse extension cord instructions
that can be found in your sig (it's scary for sure



See you soon on c.l.j.p.,

Jean


P.S : and yes, I do use unit tests, yes, I caught the typo
on the first launch and, no, a static method in a helper
class isn't nowhere near as convenient as would be the
ability to call a method directly on a String object.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off




Advertisments