0

我正在使用此代码从服务器读取响应。

public static String getContentString(HttpConnection Connection) throws IOException
{
    String Entity=null;
    InputStream inputStream;
    inputStream = Connection.openInputStream();//May give network io
    StringBuffer buf = new StringBuffer();
    int c;
    while ((c = inputStream.read()) != -1) 
    {
         buf.append((char) c);
    }

    //Response Formation            
    try
    {
        Entity = buf.toString();
        return Entity;
    }
    catch(NullPointerException e)
    {
        Entity = null;
        return Entity;
    }

}

我需要在对象选择字段中显示此实体。例如:假设我得到响应 Entity=ThisIsGoingToGood

然后,我需要在对象选择下拉列表中显示以下方式。

  • 好的

请告诉我如何实现这一目标。

4

2 回答 2

0

使用 Nate's Answer 中的参考 - 试试这个 -

ObjectListField ol = new ObjectListField(ObjectListField.ELLIPSIS);
ol.setSize(words.size()); //Where words is the vector 
for (int i = 0; i < size; i++)
    {
ol.insert(i, words.elementAt(i));
}
add(ol);
于 2013-04-10T07:59:05.060 回答
0

该解决方案假设:

  • 您的字符串的驼峰式格式将始终以大写字母开头

  • 一行中只使用一个大写字符,即使该单词是首字母缩略词。例如,“HTTP 响应”将被写为"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;
}

然后,您将有很多Vector适合您的ObjectChoiceField. 然后你可以insert()他们,如Signare的回答所示。

注意:永远记得关闭你的流。不过,我已经让您决定何时真正完成它。

于 2013-04-10T09:53:32.027 回答