JavaScript : 自分のWebコンテンツ配下のローカルファイルを読み込む

今どきの色々なライブラリを使えないような状況で、
どうしてもローカルファイルを読み込む必要があるときのJavaScriptコードです。
XMLHttpRequestを使用して読み込みましょう。
Chrome、Firefox、IEで共通です。
*Webコンテンツ外のC:ドライブのどこか~などを指定するわけではありません。

■準備

例えばこんなディレクトリ構成だったとして。
WebContent
  css
  data
    target.json
  img
  js
  jsp
  WEB-INF
    classes
    ...

■コード例

下記例ではjsonファイルを読み込んで、関数内でパースします。
// JSONファイルの読み込み。
function readJSON(){

  var f = "data/target.json";
  var retJson;

  var obj = new XMLHttpRequest();

  obj.open( 'get', f, false ); //ファイルオープン : 同期モード
  obj.onload = function() {
    try {
      retJson = JSON.parse(this.responseText); //JSON型でパース。
    } catch (e) {
      alert("コマンド定義ファイルの読み込み、解析に失敗しました。");
    }
  }
  obj.send(null); //ここで読込実行。
  return retJson;
}

ちなみに、WebContent外のファイルは流石に読み込めないと思います。

コメント

このブログの人気の投稿

windows10 で nvidia のグラボのcode43現象を解決した

Java : processbuilder 標準出力 タイムアウト

GTX560Ti がおかしい(code 43が出る)(2018年)→解決しました(2019)