title: String UTF8 encoding issue
body: <p>The following simple test is failing:</p>
  
  <pre><code>assertEquals(myStringComingFromTheDB, "£");
  </code></pre>
  
  <p>Giving:</p>
  
  <pre><code>Expected :£
  Actual   :Â£
  </code></pre>
  
  <p>I don't understand why this is happening, especially considering that is the encoding of the actual string (the one specified as second argument) to be wrong. The java file is saved as UTF8.</p>
  
  <p>The following code:</p>
  
  <pre><code>System.out.println(bytesToHex(myStringComingFromTheDB.getBytes()));
  System.out.println(bytesToHex("£".getBytes()));
  </code></pre>
  
  <p>Outputs:</p>
  
  <pre><code>C2A3
  C382C2A3
  </code></pre>
  
  <p>Can anyone explain me why?</p>
  
  <p>Thank you.</p>
  
  <p><strong>Update:</strong> I'm working under Windows 7.</p>
  
  <p><strong>Update 2:</strong> It's not related to JUnit, the following simple example:</p>
  
  <pre><code>byte[] bytes = "£".getBytes();
  for(byte b : bytes)
  {
      System.out.println(Integer.toHexString(b));
  }
  </code></pre>
  
  <p>Outputs:</p>
  
  <pre><code>ffffffc3
  ffffff82
  ffffffc2
  ffffffa3
  </code></pre>
  
  <p><strong>Update 3:</strong>
  I'm working in IntelliJ Idea, I already checked the options and the encoding is UTF8. Also, it's written in the bottom bar and when I select and right click the pound sign it says "Encoding (auto-detected): UTF-8".</p>
  
  <p><strong>Update 4:</strong>
  Opened the java file with a hex editor and the the pound sign is saved, correctly, as "C2A3".</p>