в моей форме есть несколько флажков (около 15), и проблема, с которой я сталкиваюсь, заключается в том, что имена флажков появляются в перечислении только в том случае, если они отмечены, но я хочу, чтобы все они были возвращены, так что когда я печатаю данные, это будет иметь имя флажка и сказать «отмечен» или «не отмечен». я думал об одном способе, которым я мог бы просто вручную установить флаг, чтобы увидеть, что присутствует, а что нет, но это не кажется отдаленно эффективным.
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
try
{
FileWriter writer = new FileWriter("OrderFormData.csv");
writer.append("FieldName");
writer.append(',');
writer.append("Value");
writer.append('\n');
@SuppressWarnings("unchecked")
Enumeration <String> paramNames = request.getParameterNames();
while(paramNames.hasMoreElements())
{
String paramName = (String)paramNames.nextElement();
writer.append(paramName);
writer.append(',');
String[] paramValues = request.getParameterValues(paramName);
if (paramValues.length == 1)
{
String paramValue = paramValues[0];
if (paramValue.length() == 0)
{
writer.append("No Value");
writer.append('\n');
}
else
{
writer.append(paramValue);
writer.append('\n');
}
}
else
{
for(int i = 0; i<paramValues.length; i++)
{
writer.append(paramValues[i]);
writer.append(',');
}
writer.append('\n');
}
}
writer.flush();
writer.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}