Вывод результирующего набора в строках, которые необходимо преобразовать в вывод с одним столбцом, разделенный запятой - PullRequest
1 голос
/ 29 июня 2019

Я пытаюсь написать эту Java-процедуру, чтобы отобразить вывод этого кода в виде одного столбца, разделенного запятой вместо кратных строк. В разделе printOut я хотел бы объединить весь вывод в строках до 1 столбца на пользователя. Я попытался использовать ArrayList arr = new ArrayList () и Установите results = new HashSet (), чтобы я мог получить все значения строк в массиве, разделенном запятой, как показано в ожидаемом выводе.

         ResultSet group=(ResultSet)Groups.getFieldValue(USER_GROUP_RESULTSET);//Gets all the user groups for the user
        printOut("Groupscount:"+group.getRowCount()); //Counts the # of user groups user is assigned to for printing purpose only
        group.moveFirst();
        while(!group.isEof()) {  //For all the user groups,list the user name and another col with all user groups separated by comma instead of individual rows.
        String groupname1= group.getFieldValueString(USER_GROUP); // fetches the user group name in the string. Do i need to use array here?
        printOut(USER+";"+groupname1); // It displays the output row wise
        group.moveNext();

                }

Фактический объем производства:
User1; XYZ
User1; ABC

Ожидаемый результат: User1; XYZ, ABC

1 Ответ

0 голосов
/ 30 июня 2019

Вам нужно переместить printOut за пределы цикла while

StringBuilder sb=new StringBuilder();
while(!group.isEof()) {
String groupname1=group.getFieldValueString(USER_GROUP);
sb.append(";"+groupname1);
group.moveNext();
}

printOut(USER+sb.toString());
...