title: Issue encoding java->xls
body: <p>This is not a pure java question and can also be related to HTML</p>
  
  <p>I've written a java servlet that queries a database table and shows the
  result as a html table. The user can also ask to receive the result as
  an Excel sheet.
  Im creating the Excel sheet by printing the same html table, but with
  the content-type of "application/vnd.ms-excel". The Excel file is
  created fine.
  The problem is that the tables may contain non-english data so I want
  to use a UTF-8 encoding.</p>
  
  <pre><code>PrintWriter out = response.getWriter();
  response.setContentType("application/vnd.ms-excel:ISO-8859-1");
  //response.setContentType("application/vnd.ms-excel:UTF-8");
  response.setHeader("cache-control", "no-cache");
  response.setHeader("Content-Disposition", "attachment; filename=file.xls");
  out.print(src);
  out.flush();
  </code></pre>
  
  <p>The non-english characters appear as garbage (áéíóú)</p>
  
  <p>Also I tried converting to bytes from String</p>
  
  <pre><code>byte[] arrByte = src.getBytes("ISO-8859-1");
  String result = new String(arrByte, "UTF-8");
  </code></pre>
  
  <p>But I Still getting garbage, What can I do?.
  Thanks</p>
  
  <p>UPDATE: if I open the excel file in notepad + + the type of file encoding is "UTF-8 without BOM", if I change the encoding to "UTF-8" and then open the file in Excel, the characters "áéíóú" look good.</p>