2017年4月28日金曜日

Pyside2 csvから日本語の文字列を文字化け回避

あまぐりです。

最近社内用のデータベースありきのMaya用ブラウザー作成してる時に、
pyside2ではpysideだったころの日本語対応がうごかなくて、
C++のほうのリファレンスで調べて出てきたのも解決にはならなかったので、
どうしたもんかと思ってたら・・・

for key, value in self.ProjData.items():
if '#' in key or key == '':
continue
if asciicheck.Is_Ascii(key) == None:
key = key.decode('cp932')
m_MenuAction = QtWidgets.QAction(key, self)

まぁようは普通にデコードすりゃいけたんですが、
魔法の言葉もいるのかなと

pysideでは日本語を受け取った時これいれときゃよかったのを
QtCore.QTextCodec.setCodecForCStrings( QtCore.QTextCodec.codecForLocale() )

pyside2ではこのようにってのを Qt5ではってんで見かけた
QtCore.QTextCodec.setCodecForLocale( QtCore.QTextCodec.codecForName('utf-8') )

のこうした。

が、これいれなくても普通にデコードでよかった。
魔法の言葉いらんくなったのかな。

あとpyside2ではQtGuiのWidget系が全部 pyside2.QtWidgetsに映ってるようですが、
modelやQIconとかはQtGuiのままようだわ。

紛らわしい。

早く公式のドキュメントこないのかーい。


0 件のコメント:

コメントを投稿

MotionBuilderとMayaと

お疲れ様です。 あまぐりです。 MBさん面倒なんですよね。 普通になにかツール作りたい時に、UI考えるじゃないですか。 Pysideで普通にかけちゃうから。 わざわざかのMotionBuilderさんので書かないわけです。 というかMBと共通で共有する情報欲し...