CodeIgniterで日本語名のファイルをメールに添付する際の注意

CodeIgniterに限らずかもしれませんが試してませんのでCodeIgniterって事で。

  • 発生した問題
    CodeIgniterから日本語名(マルチバイト全般?)のファイルをメールに添付して送信すると日本語部分が消える。
    データ自体に異常は発生しませんでした。例)送信時;日本語filename.txt → 受信したファイル:filename.txt
  • 解決方法
    ファイル名をISO-2022-JPにエンコードする。
    例)$this->email->attach(mb_convert_encoding(“日本語filename.xls”, ‘ISO-2022-JP’, ‘UTF-8’));

    system/libraries/Email.phpの_build_message()メソッドで

    for ($i=0; $i < count($this->_attach_name); $i++)
    {
    $filename = $this->_attach_name[$i];
    $basename = basename($filename);
    $ctype = $this->_attach_type[$i];

    というところがあるので、
    $basename = basename($filename);

    $basename = mb_substr(mb_strrchr($filename, "/"), 1);
    に置き換える。

Xamarin.FormsのSliderェ…

おいいいいいいい!!!!!って感じの仕様だか不具合を見つけてしまいまして。
Xamarin.FormsのXAMLっぽい方でSliderを設置したんです。

スクリーンショット 2014-07-04 21.10.44

そしたらですよ、アプリ起動する時に落ちるじゃないですか!(起動しない)
何でよ!って昨晩30分ぐらい悩んだんですけど分からず、さっきふと思いつきでMaximumとMinimumを逆にしたんです。

スクリーンショット 2014-07-04 21.10.59

そしたら起動するじゃないですかやだああああああああ!!!!!
Xamarin.FormsのXAMLっぽいのがどういう仕様か知らないので憶測で書きますけど

  • SliderのMaxとMinの初期値は1.0と0.0
  • XAMLでMinに1.0と書かれている部分をXamarinが解釈してMinに1.0を適用
  • その瞬間Max < Minとなりクラッシュする

っていう手順じゃないですかね?

Xamarin.FormsでWPアプリをiOS、Androidに移植

比較的カンタンなアプリ(発案から申請まで24時間)をXamarin.Formsを使ってiOSとAndroidに移植を試みています。

アプリ事態は簡単で時間指定してアラームを鳴らしたり、そのアラームを遅らせたりするだけ。
(実際はもうチョット色々やってますけど)

続きを読む