2012-02-04 67 views
0

我正在尋找一種方法來讀取外部文本文件map.txt(分配在我自己的服務器中,而不是客戶端的計算機中)並存儲其中包含的數據在使用Javascript的二維數組map[][]中。使用Javascript(無jQuery)從外部文件讀取

map.txt文件將被寫滿數字和每次的行具有固定長度:

21123301201200 
12030201303321 
21312 
123123100
12312321221220 

所以,我希望它是存儲雙維數組map在這樣的方式map[0][0] = 2map[13][4] = 0-在這個例子中。這甚至有可能做到嗎?如果是這樣,它是如何完成的?

謝謝!

+1

您是在服務器端還是在客戶端使用Javascript?你想讓服務器或客戶端讀取文件嗎? – supertopi 2012-02-04 22:41:51

+0

我在客戶端使用Javascript,我希望客戶端讀取文件(但文件本身分配在服務器中,而不是客戶端計算機中)。 – federicot 2012-02-04 23:06:53

回答

0

您可以使用XMLHttpRequest來獲取文件。看一看:http://www.quirksmode.org/js/xmlhttp.html

,利用此功能來創建數組:

function handleRequest(req){ 
    var a=req.responseText.split('\n'); 
    var len=a.length; 
    for(var i=0;i<len;i++){ 
     a[i]=a[i].split(''); 
    } 
    return a; 
} 

該函數將返回:

[["2","1","1","2","3","3","0","1","2","0","1","2","0","0"], 
["1","2","0","3","0","2","0","1","3","0","3","3","2","1"], 
["2","2","3","2","1","3","2","1","0","2","1","3","1","2"], 
["1","2","3","1","2","3","1","0","0","0","1","2","3","0"], 
["1","2","3","1","2","3","2","1","2","2","1","2","2","0"]] 

使用map[4][13]代替map[13][4]拿到最後一個元素在你的示例

+0

謝謝你,那正是我正在尋找的! – federicot 2012-02-04 23:21:44