<p>La solution la plus fiable est d’ajouter un BOM (Byte Order Mark) UTF-8 au début du fichier CSV. Le BOM est la séquence d’octets <code>EF BB BF</code>.</p>
<p>En Python :</p>
<pre data-code-wrap="python"><code class="lang-python">with open('fichier.csv', 'w', encoding='utf-8-sig') as f:
f.write('données')
</code></pre>
<p>En C# :</p>
<pre data-code-wrap="csharp"><code class="lang-csharp">File.WriteAllText("fichier.csv", contenu, new UTF8Encoding(true));
</code></pre>
<p>Excel reconnaîtra automatiquement le fichier comme UTF-8 si le BOM est présent.</p>