• 締切済み

XSLT で XML を変換すると日本語のファイル名がエンコードされてしまう。

XMLで img000_お地蔵さん.jpg というファイル名を定義してあり、XSLT で HTML にそのファイル名を出力すると img000_%E3%81%8A%E5%9C%B0%E8%94%B5%E3%81%95%E3%82%93.jpg というようにエンコードされてしまいファイルを参照できなくなってしまいます。 対処方法の分かる方、おりましたらご回答ください。 宜しくお願いします。

  • XML
  • 回答数1
  • ありがとう数2

みんなの回答

回答No.1

手元では実験していませんが、 参考になるかもしれません http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=12134&forum=9&8

関連するQ&A

  • XMLをXSLTで変換するとき、XMLの要素名をそのまま表示したいのですが…

    お世話になっております。 XMLとXSLTの勉強をしているのですが、 XMLの要素名をXSLTで変換したときそのまま表示することは可能でしょうか? ---------------------------------------------------------- コレクション.xml ---------------------------------------------------------- <コレクション>  <書籍リスト>   <書籍>    <NO>001</NO> <!--↓”タイトル”という文字列を何らかのXSLT要素でHTML直書きせずにに表現したいのです↓-->    <タイトル>ド●えもん第一巻</タイトル>    <ジャンル>マンガ</ジャンル>    <価格>\410</価格>   </書籍>  </書籍リスト> </コレクション> ---------------------------------------------------------- 出力例 ---------------------------------------------------------- //↓ここにXML要素名を入れるなんてできるのでしょうか? タイトル    |ジャンル|価格| --------------------------------- ド●えもん第一巻|マンガ |\410| どなたか、ご教授の程、宜しくお願いいたします。

    • 締切済み
    • XML
  • LinuxでXMLを静的にHTMLに変換

    こんにちは。 XSLTを使い、XML文書を静的にHTMLに変換するツールを探しています。 WindowsのMSXSL.exeみたいなやつで... できれば、シェルから引数でXMLファイル名、XSLTファイル名、出力ファイル名とオプションを指定して変換する、くらいのものがいいです。 それとも、Perlのスクリプトか何かでありますでしょうか? よろしくおねがいします。

    • ベストアンサー
    • XML
  • xmlにファイル出力

    サーバー内dirにある画像ファイルを自動取得してxmlに出力しています。ソース下記。 <?php $doc = new domDocument('1.0'); $doc->formatOutput = true; $root = $doc->createElement('item'); $root = $doc->appendChild($root); $files = glob( '*.jpg'); foreach ($files as $file) { $img = $root->appendChild($doc->createElement('image')); $img->appendChild( $doc->createtextNode($file)); } $doc->save("123.xml"); ?> 実行結果↓↓↓↓ <?xml version="1.0"?> <item> <image>37.jpg</image> <image>43.jpg</image> <image>45.jpg</image> </item> 上記の実行結果を下記の様にしたいのですが?    ↓↓↓↓ <photo url="http://demo/photos/37.jpg" /> <photo url="http://demo/photos/43.jpg" /> <photo url="http://demo/photos/45.jpg" /> よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • XML→HTMLに変換したい

    XMLで作成したデータをHTMLに変換するXSLTを作成しました。 IE6でXMLファイルをクリックすると、予定通りの表示ができるのですが、リンクをクリックした後、WINDOWS XPのツールバーにある戻るボタンを押すと、リンク元のページの一番先頭の行に戻ってしまいます。 初めからHTMLで作成すると、このようなことはないので、実際にどのようにHTMLに変換されているのかを確認しようと思うのですが、IE6で表示された画面からソースを見ても、XMLファイルの内容しか見ることができません。 変換ソフトとして、次のソフトをインストールしましたが、どうしてもうまくいきません。 (1) MSXSL.EXEをインストール →MSXML3やMSXML4をインストールしたが、パソコンの中がどうなったのかわからない。MSXSLをダウンロードするサイト("http://msdn.microsoft.com/404/default.aspx")には、MSXSL.EXEが見つからない。 (2) XT →ex.exeを実行すると、マイクロソフトJVMが見つからないとエラー表示される (3) Xalanをインストール →JAVAの知識がないため、インストールの途中で挫折 たいした努力もせずに質問をするわけで申し訳ないのですが、手っ取り早くHTMLを確認する方法はないのでしょうか。

    • ベストアンサー
    • XML
  • 改行コード入り文字列を含むXMLの変換方法

    PHPを用いて、XMLからXSLTを経由しHTMLを出力するというプログラムを作成しています。 ほとんど完成しているのですが、最後に改行で問題が発生してしまい かなり困っています。 XML内に保存されている改行入りの文字列を HTMLできちんと改行されたまま表示したいのですが 繋がったまま出力されてしまいます。 ------------------------------------------------------- ※&lt;br /&gt;は、PHPで入力文章の確認をする際に  改行させたまま表示させたいので記述して  それを残したままXMLに保存しています。 <sample> <title>見出し1</title> <paragraph>  あいうえお&lt;br /&gt;  あいうえお&lt;br /&gt;   あいうえお&lt;br /&gt; </paragraph> <sample> ↓PHPでXSLTを通してHTMLに出力 見出し1 あいうえお<br />あいうえお<br />あいうえお ------------------------------------------------------- これを、改行された状態で表示できるようにしたいのですが なかなか上手くいきません。 何か、解決策が思い浮かぶ方がいらっしゃいましたら 是非、教えていただきたいです。 利用環境はPHP5です。よろしくお願いします。

    • ベストアンサー
    • PHP
  • amazonECS4.0 XMLをHTMLに変換出来ません

    amazonECS4.0を利用してRESTリクエスト通信により返ってきたXMLをXSLTによりHTMLに変換したいのですが、うまく行きません... ■解決してほしい点 xmlにて戻ってきたタイトル情報のみを表示させようとしている、xslをアップロードしているのですが、うまくいきません。。。 まずは特定の情報のみを抜き出して表示する方法を知りたいのですが、分かる方いらっしゃいますでしょうか? このXMLに対してタイトル情報と画像情報のみを抜き出して表示出来るようなXSLソースを求めています。 XML、XSL以前にamazonECS4.0的におかしな記述がありましたら、そちらもご指摘お願いします。 ※環境等 サーバー名 s285.xrea.com Apache 1.3.37 PHP 5.1.6 PEARの使用は考えていません。 よろしくお願いします。 ■XML出力URL http://webservices.amazon.co.jp/onca/xml?Service=AWSECommerceService&SubscriptionId=09CD3TD99AGC2WFY5582&Operation=ItemSearch&Keywords=web&IdType=ASIN&ResponseGroup=Small&SearchIndex=Books&ContentType=text/xml ■HTML出力URL http://xml-jp.amznxslt.com/onca/xml?Service=AWSECommerceService&SubscriptionId=09CD3TD99AGC2WFY5582&Operation=ItemSearch&Keywords=web&IdType=ASIN&ResponseGroup=Small&SearchIndex=Books&ContentType=text%2Fhtml&Style=http%3A%2F%2Fspunkyweb.net%2Famazon%2Famazon%5F2.xsl ■XSL文書URL http://spunkyweb.net/amazon/amazon_2.xsl

    • ベストアンサー
    • XML
  • PHP ”XML_unserialize”でXMLを配列に変換したのですが・・・

    XMLファイルを配列としてとってこれる XML_unserializeというライブラリを使用して XMLファイルに含まれるデータをとってPHPで利用することが できたのですが、ここで一つ大きな問題が発生しました。 XML_unserializeをつかうと <XMLTAG>  取り出したいデータ </XMLTAG>      ↓ array(  [XMLTAG] = 取り出したいデータ ) と、たしかに取り出したいデータを配列に変換することができます。 しかし、取り出したいデータの中にタグが含まれていた場合 例えば <XMLTAG>  <div>取り出したいデータ</div> </XMLTAG> とかになっていると <div>もXMLと判断されてしまって 必要なデータがうまくとってこれないのです。 正規表現でエスケープさせるにしても数が膨大ですし、 XMLタグ名に実際にHTMLで使われている タグ名が使われているとも限りません。 どうすれば、 ”XMLの中に入っているHTML等のタグを含むデータ”をうまくとってくることが できるのでしょうか?

    • ベストアンサー
    • PHP
  • perlでxmlファイルを検索して表示する方法

    perlであるxmlファイルを検索して xmlファイルを表示する方法についてお伺いします c:\ -A --X 1.xml 2.jpg 3.jpg --Y --Z このような構造でxからzまでのディレクトリをさがして 「.xml」のファイルの中にある文字列「uuuuu」があれば そのファイルのリストを出力して、クリックすると表示 させたいのですが、perlでできますでしょうか このときファイルのリストを出力するときに 実際のファイル名を.xmlにある特定のタグについて囲まれた 文字列を表示したいと思っています。 (<name>abcde</name>) また「uuuuu」は任意で入力を要求するようにしたいと 思っています。 私ができることはテキストファイルの中身を表示するくらいです open (FILE, 'c:\A\X\1.xml') or die "$!"; while (my $line = <FILE>){ chomp $line; print "$line\n"; } close (FILE); ほかにこのような参考書、urlなどありましたら教えて いただけると幸いです よろしくお願いします

  • ファイル名の一括リネーム

    フォルダ C:\Folder\SubFolder 内に次のファイルがあると仮定します。 001_IMG_2836.jpg 001_IMG_2878.jpg 002_IMG_2838.jpg 002_IMG_2880.jpg 003_IMG_2841.jpg 003_IMG_2882.jpg 各ファイル名の最初の4文字を削除して、次のように一括でリネームする方法を教えてください。 IMG_2836.jpg IMG_2878.jpg IMG_2838.jpg IMG_2880.jpg IMG_2841.jpg IMG_2882.jpg 結果として、次のように昇順(あるいは降順)に並び替わって表示されるのは承知です。 IMG_2836.jpg IMG_2838.jpg IMG_2841.jpg IMG_2878.jpg IMG_2880.jpg IMG_2882.jpg

  • 日本語のファイル名を表示したい。

    LiinuxサーバにSFTPで日本語のファイル名を外部から送信しています。 以下のサイトを参考にログを出力できるようにしたのですが、日本語のファイル名が表示されません。http://qiita.com/Teppei1224/items/b62e5f1af335a29217e0 変換などする方法でも構いませんので、日本語のログファイルを表示させる方法はありますでしょうか。どうぞよろしくお願いいたします。 ファイル名:ああああ.txt --- ログ ----------------------------------------------------------------------------------------------------------- Nov 18 16:34:40 tcsamigo01 sftp-server[10330]: set "/home/ユーザ名/\343\201\202\343\201\202\343\201\202\343\201\202.txt" modtime 20161118-16:33:08 -----------------------------------------------------------------------------------------------------------------------

専門家に質問してみよう