• 締切済み

javascriptに関する質問なんですが、以下のようにフォルダ内のフ

javascriptに関する質問なんですが、以下のようにフォルダ内のファイル名を変数に読み込むスクリプトを実行すると日本語のファイル名が文字化けをしてしまいます。英数字の場合は正しく変数に読み込まれるのですが日本語名のファイルはどのように対処すればよいのか教えていただけないでしょうか。どなたか分かる方いらっしゃいましたらよろしくおねがいします。 Pfolder = Folder.selectDialog("画像フォルダを選択して下さい","" ); if (Pfolder != null){ Plist = Pfolder.getFiles("*.eps"); }

みんなの回答

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

ADOBEイラストレーターのjavascriptでは、いまだに日本語のフォルダー名、 ファイル名はサポートされてないみたいです。 Googleで「イラストレーター JAVASCRIPT 日本語 ファイル名」で検索すると、 やたらに、サポートされてないの記事が見つかります。これは、不具合じゃなく 仕様みたいです。

tats0601
質問者

お礼

ご回答いただきありがとうございました。 あれから色々と検索していたところ、以下のサイトでUTF-8を文字列にデコードするスクリプトが提供されており、これを変数に適用すると無事に日本語に変換することができました。 http://user1.matsumoto.ne.jp/~goma/js/utf.html

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

なるほど、イラストレーターの処理だったんですね。 不勉強でイラストレーターの知識は皆無なので、お役に立てませんが 「illustrator getFiles 日本語」でぐぐると、やはり多くの方が苦戦なさっているようで 「日本語は無理」という記載がおおいようです。参考にしてみてください。

tats0601
質問者

お礼

ご回答いただきありがとうございました。 あれから色々と検索していたところ、以下のサイトでUTF-8を文字列にデコードするスクリプトが提供されており、これを変数に適用すると無事に日本語に変換することができました。 http://user1.matsumoto.ne.jp/~goma/js/utf.html

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

質問の内容は一般的なjavascriptではないですね。 ローカルなファイルについてのみを想定すればよいのでしょうか? 基本的にwebの世界では日本語ファイル名はNGですが・・・

tats0601
質問者

お礼

ご回答いただきありがとうございました。 あれから色々と検索していたところ、以下のサイトでUTF-8を文字列にデコードするスクリプトが提供されており、これを変数に適用すると無事に日本語に変換することができました。 http://user1.matsumoto.ne.jp/~goma/js/utf.html

tats0601
質問者

補足

このjavascriptはイラストレーターというソフトウェアでのスクリプトの読み込みで使用しています。 ローカルファイルのみでの使用なのですが、日本語のファイル名を使用することが業務上都合がよく、できれば日本語のファイル名を読み込めるようにしたいと思っています。 何か変数に対して記述を加えることで文字化けを回避する方法はないでしょうか?

関連するQ&A

  • VBScriptかJavaScriptについての質問です。

    初心者名質問で申し訳ないです。 今現在、拡張子を「.hta」にして、 基本的にVBSでスクリプトを組んでいます。 現在「親.hta」ファイルから「子.hta」ファイルを呼び出す スクリプトを作っています。 で、「子.hta」ファイルが存在するフォルダの名前を 「子.hta」ファイルに表示させたいのです。 方法がよく分からなかったため、現在「子.hta」では、 VBSで自分のフォルダ名を「変数A」に取得して、 JavaScriptで「変数A」を表示させる方法をとっています。 しかし、この方法では表示されるフォルダ名が、 なぜか「子.hta」のフォルダ名ではなく、 「親.hta」のフォルダ名になってしまっています。。 フォルダを取得した時点で、 親のフォルダを取得してしまっているのでしょうが、 子自身のフォルダ名を取得するには どうすれば良いのでしょうか。 VBScript、JavaScriptどちらの方法でも良いので、 教えていただければ幸いです。

  • javascriptの簡易パスワード認証について

    javascriptでのパスワード簡易認証で、 次のようなスクリプトをネットからコピペしてホームページに使用しようとしました。 <script type="text/javascript"> function gate(){ // ▼ユーザの入力を求める var UserInput = prompt("パスワードを入力して下さい:",""); // ▼入力内容をチェック if( /W+/g.test(UserInput) ) { // ▼半角英数字以外の文字が存在したらエラー alert("半角英数字のみを入力して下さい。"); } // ▼キャンセルをチェック else if( UserInput != null ) { // ▼入力内容からファイル名を生成して移動 location.href = UserInput + ".html"; } } </script> しかし、上記のようにすると、パスを入力後に生成されるダイアログはデザインが質素で、がっかりしています。 「ぱすワードを入力してください」のダイアログボックスのデザインを良くするには、上記のプログラムをどう修正すればよいでしょうか?  そして、このダイアログは何故か、画面上部に表示されてしまいます。画面中央に表示するには、上記のjavascriptをどうすればよいでしょうか? せめて、「javascrptで可能か否か」だけでも教えていただければ幸いです。

  • php -> javascript 変数渡し

    tempフォルダにtest.txtファイルが存在すれば、 fileフォルダaaa.txtファイル名をbbb.txtファイルに変更という流れです。 変更ボタンをクリックすると、値を$testdataに渡し、ファイル有無をチェックし、ある場合は変数をjavascriptに渡すしますphpの所は問題ありませんが、 javascript処理の所がどうしてもうまくいきません。変数渡しができません。 ネット上でいろいろ調べてみましたがすべてダメでした。 ぜひ、よろしくお願いいたします。 下記はそのコードです。 ファイル名test.php <? $testdata = $_GET["testdata"]; $filename = "C:\\xampp\\htdocs\\test\\file\\temp\\".$testdata; if(file_exists($filename)){//ある場合、変数をjavascriptに渡す $testdata_script = $testdata; }//ここまでは問題ありません。 ?> <!-- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>テスト</title> <script type="text/javascript"> <!-- function test(file) {       obj = new ActiveXObject('Scripting.FileSystemObject'); var name = '<?php echo $testdata_script ;?>'; alert(name); strMoveFrom = 'C:\\xampp\\htdocs\\test\\file\\aaa.txt'; strMoveTo = 'C:\\xampp\\htdocs\\test\\file\\bbb.txt'; obj.MoveFile(strMoveFrom ,strMoveTo ); obj= null } //--> </script> ...省略 <form action=test.php method=get accept-charset=UTF-8> <input type=submit value=変更 onclick=test('file')> <input type=hidden name=testdata value="test.txt">

  • JavaScriptを最後に実行するには?

    JavaScriptでリンクをランダムに表示するようにしたところ、 少し表示が遅く感じるようになったため、 最後にJavaScriptを実行するようにonloadイベントを使って [外部(JavaScript)ファイル] <!-- window.onload = function onload(){ var random = Math.floor(Math.random() * 3); if(random == 0) document.write('<a href="URL1">サイト名1</a>'); else if(random == 1) document.write('<a href="URL2">サイト名2</a>'); else if(random == 2) document.write('<a href="URL3">サイト名3</a>'); }; //--> [HTMLファイル内] <script type="text/javascript" src="./フォルダ名/ファイル名.js"></script> のように書いて試しましたが、真っ白なページにこのスクリプトの内容だけが表示されてしまいます。 "window.onload = function onload{"と、最後の"};"の部分を追加するまでは普通に動いていました。 また、ページ内に、別の外部ファイルも含めて同じようなものを複数組み込みたいと思っています。 この方法でなんとか表示したいのですが、 別の方法も含め、情報をいただきたいです。 わかりにくいところがあれば補足します。 よろしくお願いします。

  • javascriptで困っています。教えてください

    以下のようにjavascriptの内容を書いた外部のテキストファイルを読み込んで、実行しようとしているのですが、うまくいきません。普通にjavascriptを読み込むのは分かっているのですが、このような方法ができないのでしょうか?よろしくお願いします。 <!doctype html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>無題ドキュメント</title> </head> <body> <div id="jsbox"></div> <script type="text/javascript"> var jsbox = document.getElementById("jsbox"); //非同期通信///////////////////////////////////////////// var xmlHttp; loadText(); function loadText(){ if (window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); }else{ if (window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }else{ xmlHttp = null; } } xmlHttp.onreadystatechange = checkStatus; xmlHttp.open("GET", "http://xxxxxxxxxxxx/js_test.txt", true); xmlHttp.send(null); } function checkStatus(){ if (xmlHttp.readyState == 4 && xmlHttp.status == 200){ var str = xmlHttp.responseText;alert(str); jsbox.innerHTML = str; test_js(); } } ///////////////////////////////////////////////////////////////// </script> </body> </html> テキストファイルをhttp://xxxxxxxxxxxx/js_test.txtに置き、テキストファイルの内容が <script type="text/javascript"> function test_js(){ alert("test"); } </script>

  • 文字化けしたフォルダ名・ファイル名を修正したい。

    WindowsXPでうまく認識しなくなった壊れかけのハードディスクの中身を、Knoppix日本語版(1CD Linux)を使って、別のディスクにコピーました。 しかしながら、日本語で名前をつけていたフォルダ名・ファイル名が文字化けしてしまいました。 一度文字化けしてしまったフォルダ名・ファイル名を修正したいのですが、どうしたらよいでしょうか?

  • javascriptの正規表現で変数を扱う

    javascriptの正規表現で変数を扱う方法がわからずに困っております。 下記スクリプトの●●●部分に変数をいれるとしたら、 どうすれば良いでしょうか? どなたかご教授ください。 宜しくお願いいたします。 if(/(?:^|\s)●●●(?:$|\s)/.test(obj.className)){

  • 日本語フォルダについて

    http://popilol.lolipop.jp/NiconicoPHP/pipipiga.html 上記のプログラムを利用しており フォルダを日本語で利用したいのですが FAQに簡単に説明があるのですが プログラムは全く分からないため 困っております もしお分かりになる方がおられましたらご教授ください 下記がFAQの内容です 1はもちろん分かるのですが 2.3の日本語対応にする の意味が分かりません 「Q. サーバ上のフォルダ名や画像ファイル名に日本語は使えますか? いいえ。フォルダ名と画像ファイル名への日本語使用はエラーとしています。英数字等をご使用ください。 pipipigaは、あらゆるサーバで動作可能な汎用性を考慮しているため、フォルダ名やファイル名の日本語対応をあえて行っておりませんが、ご利用サーバにmgstringという拡張モジュールがインストールされているのであれば、pipipiga.phpを改造することで対応可能です。具体的には、 1.dat/config.ini.datファイルのcQueryIsPathを0にする。 2.pipipiga.phpのvalidPath()を日本語対応する。 3.pipipiga.phpのmakeArgMenu()のbasename($idx)を日本語対応する。 でOKかと思います。 改造に関しては、調査および実装にそれなりの工数(時間)が掛かるため、大変申し訳ありませんが、サポートはしておりません。ご了承ください。 」

    • ベストアンサー
    • PHP
  • Javascriptにおける「存在無」について

    現在PHPで作った動的サイトの一部をjavascript化しています。 サイトは基本的にPHPで作られており、URL ttp://hoge.jp/hoge.php?id=1234 を叩いた場合、MySQLにあるテーブル(id=1001番から2000番までの1000人)の情報を見に行き、ユーザーID 1234 のデータ表示を行います。 一方、ttp://hoge.jp/hoge.php?id=999999 のように存在しないユーザー名をURLで強制指定した場合、「そのユーザーは存在しません」という表示をするようにPHPで作っています。 PHPの場合、下記のように、if (is_null($row_user['id'])) で用を足すことが出来ました。 【成功例 PHP】 <?php if (is_null($row_user['id'])) { echo "そのユーザーは存在しません"; } ?> ここまでは問題ありません。 この部分をjavascript化するときにつまずきました。 【失敗例 javascript】 <script type="text/javascript"> var e33=<?php echo $row_user['id']; ?>; if (e33===NULL) { document.write("そのユーザーは存在しません"); } </script> PHPで成功した「ユーザー無の場合NULL」が通用せず、表示されません。 == でも同様です。 存在しない ということの表現がPHPではNULLでOKだったのにjavascriptでは別の表現が必要なようです。 この場合、どのように表現すればよいかご教授願います。

  • イラレCS2のスクリプトでJPEG変換

    フォルダ内のAIファイル、EPSファイルをJPEG画像として一括変換したいと思っています。 WEBサイトを回ってスクリプトで処理するのが一番早いようだと思ったのですが、うまく動作しません。 どなたかわかる方おられれば、スクリプトソースを教授いただけますでしょうか? そのソースをテキストに貼り付けて利用させたもらおうかと思います。 実際に処理したい作業は以下の手順になります。   1.ファイルのあるフォルダ(開くフォルダ)を指定する←汎用性が必要   2.保存先のフォルダを指定する←汎用性が必要   3.1のフォルダ内のAIファイルをJPEG変換して2のフォルダに保存する(同一ファイル名は上書きor可能であればダイアログで聞く)   4.1のフォルダ内のEPSファイルをJPEG変換して2のフォルダに保存する(同一ファイル名は上書きor可能であればダイアログで聞く) スクリプトでフォルダの指定とか、出来たりするのかわからないのですがプリセットのスクリプトを開くと保存先を確認するダイアログとか出てたので、出来るのではないかなぁ?と・・・。 あと、JPEGの保存設定については多分スクリプト内で指定しないと難しいと思うので、各項目が何を示しているのか明記いただけると助かります。 利用環境  WindowsXP SP2(日本語)  Adobe Illustrator CS2(日本語) よろしくお願いします。