トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   FLASH目安箱【バグ報告・要望】
     LoadVars/load.VariablesでのURLエンコード
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
c-geru
Åê¹ÆNo.5320
投稿日時: 2004-3-20 18:27
職人
居住地: 文京区本郷
投稿: 209
使用環境:
10.6.8+ CS5.5
Win7+ CS4
LoadVars/load.VariablesでのURLエンコード
小川です。

FLASH Player6で、LoadVarsでSHIFT-JISでURLエンコードされた文字列が正しく受け取れません。
(System.useCodepage=true/falseに関わらず)

ML時代の過去ログ([flash:29990])で松瀬さんが指摘されていたんですが・・・
引用:
・UTF-8 生 ○
・UTF-8 (URL エンコード) ○
・SHIFT_JIS 生 ○
・SHIFT_JIS (URL エンコード) ×

ということのようです。そしてこれはFLASH Player7以降でも解消されていないようです。

#MX2004からFLASH Player7形式で書き出しても同様です。

load.Variablesでは問題なくデコードされます。おそらくFLASH5時代のメソッドはそのままなので
問題が起きない・・・ということだと思われます。

HTMLパラメタとして受け取る場合の問題は、このスレッドで確認していたのですが、
LoadVarsでも同様の問題があることに、今回遭遇するまで気付きませんでした
かなり有名なバグという話も聞きましたし、結構大きな問題だと思うのですが、
ここの検索では見つからないので今後のために改めて書かせていただきました。

#今頃騒いでいるのは、私ぐらいでしょうか
#以前この手のものを作った時は、まだLoadvarsを使ってなくて
#旧来の手法(load.Variables)だったもので、今頃気付きました

ご指摘、補足などありましたら、よろしくお願いします。
c-geru
Åê¹ÆNo.5673
投稿日時: 2004-3-30 14:21
職人
居住地: 文京区本郷
投稿: 209
使用環境:
10.6.8+ CS5.5
Win7+ CS4
Re: LoadVars/load.VariablesでのURLエンコード
マクロメディアのテクサポから、下記の回答をもらいました。
LoadVarsがSystem.useCodePageをサポートしないなら、
きちんとマニュアル等で謳ってほしいですね・・・

引用:
現在の所、同様のご質問はございませんでしたが、LoadVarsに関しま
してはSystem.useCodePageをサポートしないので、「URLエンコード
されたSHIFT_JIS」をロードすることができません。

よって現時点では「SHIFT_JISでURLエンコードされた日本語」が前提
ということであれば、Flash側ではLoadVarsではなく、loadVariableを
代わりにご利用いただく方法からご検討ください。

担当からは問題点として報告させていただきました。
テクニカルノートにつきましては作成を検討させていただきますので
ご参照ください。
ken1kun
Åê¹ÆNo.25745
投稿日時: 2006-5-25 12:31
半人前
居住地:
投稿: 52
使用環境:
WinXP,Flash CS3 + おもにv9書出
Re: LoadVars/load.VariablesでのURLエンコード
この不具合って8で解決されたんですかね?
やってみろよってところですが;
Fla4man
Åê¹ÆNo.25746
投稿日時: 2006-5-25 14:31
職人
居住地: かまくら
投稿: 517
使用環境:
WinMe,Win2000,
Flash4,アズさん,大仏、delphi
Re: LoadVars/load.VariablesでのURLエンコード
不具合ではなくて仕様だと思うんですが
Flashの×を数え出したら日が暮れちゃうので
結果重視でいけばFlash6段階でも出来ていたはずです。

例えばURLエンコード必須ってのは
ようするに英語環境で通る文字セットって事だとおもうんですが

loadvarsだっらondataで変数に取り込んでから
codepage trueにして
unescapeってのはだめなんですか?


----------------
通常のハンドル名:×○○× ねた回収モードに突入 現在1/100

tnagata
Åê¹ÆNo.25754
投稿日時: 2006-5-26 9:47
常連
居住地:
投稿: 140
使用環境:
Flex2,, Flash5
OS:Windows 2000 SP4,,WindowsVista
IE5,6,7
Re: LoadVars/load.VariablesでのURLエンコード
すっごい気になりましたので、ちょっと検証手段として不安なんですがやってみました。問題あれば、ご指摘ください。
引用:
この不具合って8で解決されたんですかね?


1.Flash8の[編集]⇒[環境設定]で環境設定ダイアログを開く
  [カテゴリ]で”ActionScript”を選択して
  [開く/読み込み]を”デフォルトエンコーディング”
  [保存/書き出し]を”デフォルトエンコーディング”
  (この手順が必須かどうか自信ないです)

2.Frame1に
System.useCodepage=true;
trace(encode("こんにちは"));

と入力する

3.ムービープレビューを実行して[出力]パネルから
  traceした文をコピー

4.エディターで"shiftjis.txt"を作成して3でコピーした文字列を
  貼り付けして、SHIFT-JISエンコードで保存
&test=%82%B1%82%F1%82%C9%82%BF%82%CD


5.以下のコードで"shiftjis.txt"を読み取る
System.useCodepage=true;
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(isSuccess:Boolean)
{
	if ( isSuccess )
	{
		trace(this.test);
	}
}
my_lv.load("shiftjis.txt");


これで、確認したのですが[出力]パネルには
こんにちは
と出力されました。

ちなみに
trace(unescape(this.test));
と行うと、文字化けしたんですが。この辺で検証できてるのか分からなくなりました
自信ないのですが。いかがでしょ。
ken1kun
Åê¹ÆNo.25755
投稿日時: 2006-5-26 9:55
半人前
居住地:
投稿: 52
使用環境:
WinXP,Flash CS3 + おもにv9書出
Re: LoadVars/load.VariablesでのURLエンコード
tnagataさん こんにちわ。

僕も同じ手順で今ためしてみました!

解決してるっぽい?ですね!

v7で書き出したSWFを
Player8で再生すると文字が正常に表示され
Player7で再生すると文字が化け(アノソヘ)ました!!!

やった?!
解決してるですよね?これって
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops