システムトレード実践編

iPhoneにメールを送る場合の文字化けについて




 今回は、「iPhoneにメールを送る場合の文字化けについて」という内容で書かせて頂きます。

 最近よくメール機能でフリーメールなどに送った場合は正常に表示されるのに、iPhoneにメールを送った場合だけ文字化けする。


 といった内容のお問い合わせを受けます。

 結論から言いますと、これはメールの内容に日本語が含まれているからです。(正しくは2バイト文字)

 ですので、メール内容を全部半角英数にすれば問題は解決します。


 例えば、iPhoneに下記のようなコードでメールを送った場合、


※事前にオーダーセレクトをしておきます。

SendMail("Mail",  
"時間 : "+TimeToStr(TimeLocal())+
"¥n通貨ペア : "+OrderSymbol()+
"¥nシグナル : 買い"+
"¥n取得レート : "+DoubleToStr(OrderOpenPrice() ,Digits)+
"¥nロット : "+DoubleToStr(OrderLots(),2)+
"¥n¥n¥n"+"口座残高 : "+DoubleToStr(AccountBalance(),0)+"円"+
"¥n"+"有効証拠金 : "+DoubleToStr(AccountEquity(),0)+"円"+
"¥n"+"余剰証拠金 : "+DoubleToStr(AccountFreeMargin(),0)+"円");


 iPhoneでは、下記のように文字化けして表示されます。


: 2012.03.27 17:16
y A : USDJPY
V O i :
[ g : 82.825
b g : 0.1


c : 4992750 ~
L : 4992590 ~
] : 4984308 ~



 これを全部半角英数の下記のようなコードにすると、


SendMail("Mail",
"Time : "+TimeToStr(TimeLocal())+
"¥nSymbol : "+OrderSymbol()+
"¥nSignal : New Buy"+
"¥nOpen Price : "+DoubleToStr(OrderOpenPrice() ,Digits)+
"¥nLots : "+DoubleToStr(OrderLots(),2)+
"¥n¥n¥n"+"Balance : "+DoubleToStr(AccountBalance(),0)+" Yen"+
"¥n"+"Equity : "+DoubleToStr(AccountEquity(),0)+" Yen"+
"¥n"+"FreeMargin : "+DoubleToStr(AccountFreeMargin(),0)+" Yen");



 文字化けせずに下記のように正常に表示されます。


Time : 2012.03.27 17:19
Symbol : USDJPY
Signal : New Buy
Open Price : 82.830
Lots : 0.1


Balance : 4992620 Yen
Equity : 4992460 Yen
FreeMargin : 4984177 Yen



iPhoneにメールを送る時は、全部半角英数にするようにしましょう。


今回はこれで終了です。


--------------注意----------------

内容には注意を払っていますが、保障は出来ません。
実際に運用する場合は、自己責任でお願いします。



 
<< 色々な決済の仕方 | TOP | よく見るエラーコード >>

トップページ プロフィール ブログ リンク オーダーシステム 利用規約 問い合わせ