<%@ page language="java" contentType="text/html; charset=utf-8" import="java.io.*" import="java.util.*" import="java.text.*"%> Insert title here
Курс
<% request.setCharacterEncoding("UTF-8"); final NumberFormat nf = NumberFormat.getInstance(); nf.setMaximumFractionDigits(2); nf.setMinimumFractionDigits(2); try { String rateParameter = request.getParameter("rate"); // как не дожидаться этого параметра? и продолжать работу Double rate = Double.parseDouble(rateParameter); Scanner sc = null; String real_filename = pageContext.getServletContext() .getRealPath("/goods.txt"); try { sc = new Scanner(new File(real_filename)); } catch (Exception e) { e.printStackTrace(); } Map goods = new TreeMap(); while (sc.hasNext()) { String line = sc.nextLine(); String[] goodsData = line.split("="); goods.put(goodsData[0], Double.parseDouble(goodsData[1]) * rate); } %> Список товаров
Товар Цена(бел. руб.)
<% //iterating over keys only for (String key : goods.keySet()) { out.println(key + "
"); } %>
<% //iterating over values only for (Double value : goods.values()) { out.println(nf.format(value) + "
"); } %>
<% } catch (NumberFormatException nfe) { out.println(nfe.toString()); } catch (NullPointerException npe) { out.println(npe.toString()); } catch (Exception e) { out.println(e.toString()); } %>