2011-08-11 16 views
9

संपादित करें: मैं एक विशिष्ट फ़ोल्डर में सभी फ़ाइलों को पढ़ने की कोशिश कर रहा हूं और वहां फ़ाइलों को सूचीबद्ध करता हूं, एक विशिष्ट फ़ाइल की सामग्री को नहीं पढ़ता। मैंने बस एक फाइलसिस्टम ऑब्जेक्ट बनाने की कोशिश की और यह कुछ भी नहीं करता है। मैं एक चेतावनी दिखाता हूं (जो पॉप अप करता है) beforfe FileSystemObject बनाता है, और इसके बाद एक (जो दिखाया नहीं जाता है)। तो समस्या बस वस्तु बनाने में है।जावास्क्रिप्ट: फ़ोल्डर में फ़ाइलें पढ़ें

मूल:

मैं जावास्क्रिप्ट का उपयोग करके एक फ़ोल्डर में सभी फ़ाइलें पढ़ने के लिए कोशिश कर रहा हूँ।

यह एक स्थानीय HTML फ़ाइल है, और यह सर्वर पर नहीं होगा, इसलिए मैं PHP I अनुमान का उपयोग नहीं कर सकता।

अब मैं एक विशिष्ट दिए गए फ़ोल्डर में सभी फ़ाइलों को पढ़ने के लिए कोशिश कर रहा हूँ, लेकिन यह मुद्दे पर कुछ नहीं करता मैं एक FileSystemObject

यहाँ बनाने के कोड का उपयोग मैं है, तो अलर्ट 2 जब तक पता चलता , तो यह बंद हो जाता है।

alert('1'); 
    var myObject, afolder, date; 
    alert('2'); 
    myObject = new ActiveXObject("Scripting.FileSystemObject"); 
    alert('3'); 
    afolder = myObject.GetFolder("c:\\tmp"); 
    alert('4'); 
    date = afolder.DateLastAccessed; 
    alert("The folder"+name+" is a temporary folder."); 

क्या मैं इसे सही तरीके से कर रहा हूं?

धन्यवाद!

+0

आपके ब्राउज़र की त्रुटि कंसोल में क्या कहता है है? – Oswald

+0

यह कुछ भी नहीं कहता है, यह '2' के साथ पॉप अप करने के बाद और कुछ भी नहीं करता है। क्या कोई तरीका है कि मैं इसे डीबग कर सकता हूं? – Killerwes

+0

क्षमा करें, बस इसे फायरबग के साथ डीबग किया। त्रुटि कहती है 'ActiveXObject परिभाषित नहीं किया गया है' – Killerwes

उत्तर

4

Google खोज के साथ मिली विधि मुझे HTML5 का उपयोग करती है, इसलिए यदि आप एक आधुनिक ब्राउज़र का उपयोग कर रहे हैं तो आपको अच्छा होना चाहिए। इसके अलावा ट्यूटोरियल पेज यह जांचने लगता है कि आप जिस ब्राउजर का उपयोग कर रहे हैं वह सुविधाओं का समर्थन करता है या नहीं। यदि ऐसा है तो आपको ट्यूटोरियल का पालन करना अच्छा होना चाहिए जो बहुत अच्छी तरह से दिखता है।

http://www.html5rocks.com/en/tutorials/file/dndfiles/

+3

उत्तर के लिए धन्यवाद, लेकिन मैं फ़ाइलों में फ़ाइलों को पढ़ने के लिए एक फ़ोल्डर में फ़ाइलों को पढ़ने के लिए देख रहा हूं, फाइलों की सामग्री को नहीं पढ़ता। मैंने बस फाइल सिस्टम सिस्टम का ऑब्जेक्ट बनाने की कोशिश की, और यह कुछ भी नहीं करता है। यह यहां काम नहीं कर रहा है। मैं बस किसी दिए गए फ़ोल्डर में मौजूद सभी फ़ाइलों को सूचीबद्ध करना चाहता हूं। – Killerwes

4

यह समाधान केवल IE11 पर काम करता है या उससे अधिक के बाद से यह एमएस आधारित

<script type="text/javascript"> 
    var fso = new ActiveXObject("Scripting.FileSystemObject"); 

    function showFolderFileList(folderspec) {  
     var s = ""; 
     var f = fso.GetFolder(folderspec); 

     // recurse subfolders 
     var subfolders = new Enumerator(f.SubFolders); 
     for(; !subfolders.atEnd(); subfolders.moveNext()) { 
      s += ShowFolderFileList((subfolders.item()).path); 
     } 

     // display all file path names. 
     var fc = new Enumerator(f.files); 
     for (; !fc.atEnd(); fc.moveNext()) { 
      s += fc.item() + "<br>"; 
     } 
     return s; 
    } 

    function listFiles() { 
     document.getElementById('files').innerHTML = showFolderFileList('C:'); 
    } 
</script> 

<input type='button' onclick='listFiles()' value='List Files' /> 
<div id="files" /> 
+0

जब मैं इसे आज़माता हूं तो मुझे त्रुटि मिलती है "ActiveXObject परिभाषित नहीं किया गया है"। – Addem

+0

हाय Addem, यह समाधान केवल आईएस 11 या पुराने पर काम करता है क्योंकि यह एमएस आधारित है। क्या आप पुष्टि कर सकते हैं कि आप इसका उपयोग कर रहे हैं? – BelgoCanadian

+0

@ BelgoCanadian क्या आप अपनी टिप्पणी को अपने उत्तर में जोड़ सकते हैं – Shogunivar

संबंधित मुद्दे