<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: byteordermark</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/byteordermark.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2008-08-20T12:19:59+00:00</updated><author><name>Simon Willison</name></author><entry><title>UnicodeDictWriter - write unicode strings out to Excel compatible CSV files using Python</title><link href="https://simonwillison.net/2008/Aug/20/excel/#atom-tag" rel="alternate"/><published>2008-08-20T12:19:59+00:00</published><updated>2008-08-20T12:19:59+00:00</updated><id>https://simonwillison.net/2008/Aug/20/excel/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.djangosnippets.org/snippets/993/"&gt;UnicodeDictWriter - write unicode strings out to Excel compatible CSV files using Python&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Stuart Langridge and I spent quite a while this morning battling with Excel. The magic combination for storing unicode text in a CSV file such that Excel correctly reads it is UTF-16, a byte order mark and tab delimiters rather than commas.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/byteordermark"&gt;byteordermark&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/csv"&gt;csv&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/excel"&gt;excel&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/i18n"&gt;i18n&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/stuart-langridge"&gt;stuart-langridge&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/unicode"&gt;unicode&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/unicodedictwriter"&gt;unicodedictwriter&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/utf16"&gt;utf16&lt;/a&gt;&lt;/p&gt;



</summary><category term="byteordermark"/><category term="csv"/><category term="excel"/><category term="i18n"/><category term="python"/><category term="stuart-langridge"/><category term="unicode"/><category term="unicodedictwriter"/><category term="utf16"/></entry></feed>