スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


--------------------------------------------------------------------------------------

VisualforceでCSV出力するときのファイル名を日本語にしたいぞ。という話

過去の記事参考
Salesforce。VisualforceでCSV出力してみた話。


ファイル名を指定する場合、contentTypeで#をつけて記述すればそれがファイル名になります。
contentType="text/csv;charset=Shift-JIS;#test.csv"
だとtest.csvですね。

だから単純に
contentType="text/csv;charset=Shift-JIS;#テスト.csv"
とすればテスト.csvになるのではないかな?と思ったらならないのよ。

ということで、やり方わからないし検索してもこの件で悩んだ人はいないっぽい。
英語でnon-asciiの場合もできるぞ!みたいな情報だけは見つけたけど具体的なコード例が載ってなかったり。

っで、トライ&エラーでいろいろやってみたところ、URLエンコードをかけてあげればよいことが分かりました。
Salesforceの数式でURLENCODEというものが存在するので
contentType="text/csv;charset=Shift-JIS;#{!URLENCODE('テスト'.csv)}"
とすれば、日本語ファイル名となりました。
ApexだとEncodingUtilクラスにurlEncodeというメソッドがあるので、それを使用すればOKでしょう。


ただし・・・
Salesforce Clasicでやってみたところ
Win7 chrome・・・日本語。
Win7 firefox・・・エンコードの文字列。
Win7 IE11・・・日本語。
Macの場合は不明。。。環境持ってないので。
となるようで、オールマイティなやり方ではないようで、Salesforceの使用ユーザと調整が必要でしょう。
とりあえず、「日本語ファイル名でよろしく」と言われたら、断ったほうが無難です。


関連記事


--------------------------------------------------------------------------------------

コメントの投稿

非公開コメント

このブログについて
  • 全記事一覧(時間順)
  • このブログについて
  • 私のプロフィール
  • 当ブログで扱っている動画について
  • 記事違いなコメントのお返事

  • カテゴリー
    twitter
    カレンダー
    08 | 2017/09 | 10
    - - - - - 1 2
    3 4 5 6 7 8 9
    10 11 12 13 14 15 16
    17 18 19 20 21 22 23
    24 25 26 27 28 29 30
    Amazon
    でたらめな当ブログにぴったりな商品を自動で表示するみたいです。



    月別アーカイブ
    プロフィール

    たづみ

    Author:たづみ
    ・1981年生まれの男
    ・もう少し詳細なプロフィールはこちらで

    最新コメント
    アクセスランキング
    [ジャンルランキング]
    日記
    920位
    アクセスランキングを見る>>

    [サブジャンルランキング]
    会社員・OL
    188位
    アクセスランキングを見る>>


    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。