Ticket #25267

CSVで出力したチケットがutf-8になる

Eröffnet am: 2011-05-26 08:41 Letztes Update: 2011-07-28 19:43

Auswertung:
Verantwortlicher:
Typ:
Status:
Geschlossen
Komponente:
(Keine)
Meilenstein:
Priorität:
5 - Mittel
Schweregrad:
4
Lösung:
Gefixt
Datei:
Keine

Details

CSVで出力したチケットがutf-8のため、Excelで文字化けする。

昔は、SJISで出力するパッチを当てていたが、trac-0.12ベースにしたときに多分外れた。 report.pyとquery.pyの

        writer.writerow([unicode(c).encode('utf-8') for c in cols
                         if c not in self._html_cols])
とかなっているところを、cp932に変更すれば多分ok。

Ticket-Verlauf (3/5 Historien)

2011-05-26 08:41 Aktualisiert von: okamototk
  • New Ticket "CSVで出力したチケットがutf-8になる" created
2011-05-26 12:16 Aktualisiert von: jun66j5
Kommentar

Unicode BOM を付ければ Excel で化けないように出来るので trac/trunk ではそのようになりました。 t6656-utf8-bom-r10225.diff in trac, #6656 in trac

cp932 のほうがよいってことであれば、cp932 に encode 出来ない文字があるだけで UnicodeEncodeError を出すので、replace をつけたほうがよさそうです。

        writer.writerow([unicode(c).encode('cp932', 'replace') for c in cols
                         if c not in self._html_cols])

2011-05-26 13:23 Aktualisiert von: okamototk
Kommentar

なるほど、これですかね。

http://trac.edgewall.org/changeset/10226

trunkで修正済みなら、これに合わせた方がよさそうですね。

2011-05-28 09:55 Aktualisiert von: okamototk
  • Lösung Update from Keine to Gefixt
  • Verantwortlicher Update from (Keine) to okamototk
2011-07-28 19:43 Aktualisiert von: kanu
  • Status Update from Offen to Geschlossen
  • Ticket Close date is changed to 2011-07-28 19:43

Dateianhangliste

Keine Anhänge

Bearbeiten

Please login to add comment to this ticket » Anmelden