2012-02-22 10 views
-2

可能性の重複:
How to use a JSON file in javascriptJavascriptを使用してJson文字列を含むテキストファイルを読み取るにはどうすればよいですか?

私は、テキストファイルにJSON文字列を置きます。 これでJavascriptを使用して文字列をオブジェクトに転送するために、このファイルを読みたいと思います。

どうすればファイルを読むことができますか?

+5

ファイルはどこですか?あなたはどんな環境ですか?ウェブページですか? –

+1

[検索](http://stackoverflow.com/search?q=javascript+read+json+file)しましたか? – Quentin

+0

javascriptは、この非常に複雑なphpをこれを行うのがもっと簡単になるようにします... –

答えて

-1

別名AJAX呼び出しのXMLHttpRequestを使用して、ファイルをJavaScriptにロードします。

+1

OPは、ファイルがサーバ上にあるとは言いませんでした。 – jAndy

+2

本当ですが、それは可能性のあるケースです - 確かに、そこにある小さな情報に基づいて推測するのに十分です。結局のところ、OPはサーバー上に*あったとは決して言いませんでした。 –

0

OKクライアントでこれを行う場合は、HTML5ファイルapiを使用できます。これはあなたが始めなければならないいくつかのサンプルコードです。

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
      <html xmlns="http://www.w3.org/1999/xhtml"> 
      <head> 
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
      <title>Untitled Document</title> 
      <style type="text/css"> 
       body 
       { 
        font-size:18pt; 
       } 
      </style> 
      <script type="text/javascript"> 
       function init() { 
        var bHaveFileAPI = (window.File && window.FileReader); 

        if (!bHaveFileAPI) { 
         alert("This browser doesn't support the File API"); 
         return; 
        } 

        document.getElementById("fileElem").addEventListener("change", onFileChanged); 
       } 

       function onFileChanged(theEvt) { 
        var thefile = theEvt.target.files[0]; 

        // check to see if it is text 
        if (thefile.type != "text/plain") { 
         document.getElementById('filecontents').innerHTML = "No text file chosen"; 
         return;// this will just get out of the function. 
        } 

        var reader = new FileReader(); 
        //file reader has an event there is no need to assign an event listener the 
        //onload event can just be assign like the below. 
        reader.onload = function (evt) { 
         var resultText = evt.target.result; 
         document.getElementById('filecontents').innerHTML = resultText; 
        } 
      // readAsText is a native method of the FileReader object. 
        reader.readAsText(thefile); 
       } 

       window.addEventListener("load", init); 
      </script> 
      </head> 
      <body> 
      <h1>Reading File Data as Text</h1> 
      <form action=""> 
      <label>Select a file: </label> 
      <input type="file" name="files" id="fileElem" /> 
      </form> 
      <p>File contents: </p> 
      <textarea cols="80" rows="10" id="filecontents"></textarea> 
      </body> 
      </html> 

彼らは一度だけ、ファイルがサーバー上にある場合は、HTTP要求をすることができそうでない場合は、ファイルのAPIをサポートしているので、これが唯一のFirefoxとChromeで動作します。

関連する問題