This solution assumes:
The Camel Case format of your strings will always start with an upper case letter.
Only one upper case character in a row is used, even if the word is an acronym. For example, "HTTP response" would be written as
"HttpResponse"
.
public static Vector getContentStrings(HttpConnection connection) throws IOException {
Vector words = new Vector();
InputStream inputStream = connection.openInputStream();
StringBuffer buf = new StringBuffer();
int c;
while ((c = inputStream.read()) != -1)
{
char character = (char)c;
if (CharacterUtilities.isUpperCase(character)) {
// upper case -> new word
if (buf.length() > 0) {
words.addElement(buf.toString());
buf = new StringBuffer();
}
}
buf.append(character);
}
// add the last word
words.addElement(buf.toString());
return words;
}
Then, you'll have a nice Vector
full of the choices for your ObjectChoiceField
. You can then insert()
them, as shown in Signare's answer.
Note: always remember to close your streams, too. I've leave it to you to decide when you're really finished with it, though.