private void writeRow(int numberOfRow, int maxStringRow, LinkedHashMap<Integer, List<String>> strings, boolean flag) throws IOException {
        String columnType, s;
        int j;
        for (int i = 0; i < maxStringRow; i++) {
            j = 0;
            for (Column column : columns) {
                columnType = column.getClass().getSimpleName();
                if (columnType.equals("MoneyColumn")) {
                    if (!flag)
                        writer.write(column.toString(numberOfRow, columns.size()));
                    else {
                        writer.write(column.toString(-1, columns.size()));
                    }
                }
                if (columnType.equals("StringColumn")) {
                    if (strings.get(j).size() > i)
                        s = strings.get(j).get(i);
                    else
                        s = "";
                    writer.write(StringParser.convString(columns.size(), column.getColumnNumber(),
                            column.spaceString(s, " "), s));
                }
                if (columnType.equals("IntegerColumn")) {
                    if (!flag)
                        writer.write(column.toString(numberOfRow, columns.size()));
                    else
                        writer.write(column.toString(-1, columns.size()));
                }
                j++;

            }
            flag = true;
            writer.write("\n");
        }
    }