मैं जावास्क्रिप्ट में गतिशील रूप से एक टेक्स्ट फ़ाइल जेनरेट करना चाहता हूं, फिर इसे डाउनलोड के लिए ऑफ़र करें। वर्तमान में मैं निम्न समाधानों में से किसी के साथ एक हद तक इस काम के प्राप्त कर सकते हैं:मैं एक फ़ाइल कैसे उत्पन्न कर सकता हूं और इसे सादे जावास्क्रिप्ट में डाउनलोड करने के लिए कैसे पेश कर सकता हूं?
content = "abc123";
document.location = "data:text/octet-stream," + encodeURIComponent(content);
या
content = "abc123";
var bb = new BlobBuilder();
bb.append(content);
var blob = bb.getBlob();
blob = blob.slice(0, blob.size, 'text/octet-stream');
var fr = new FileReader();
fr.onload = function() {document.location = this.result;}
fr.readAsDataURL(blob);
हालांकि, इन समाधानों में से दोनों, जब डाउनलोड बॉक्स प्रकट होता है, केवल एक डिफ़ॉल्ट फ़ाइल नाम की पेशकश करेगा संवाद के रूप में सहेजने में 'डाउनलोड' का।
मेरा प्रश्न मूल रूप से है, मैं कैसे एक विशिष्ट फ़ाइल नाम उदाहरण 'readme.txt' या 'scene.obj' के लिए
इसके अलावा डेटा प्रकार ध्यान दें था पहले से 'पाठ/सादे' लेकिन इस करता है, तो करने के लिए इसे बदल सकते हैं इसका उपयोग किया जाता है, दस्तावेज इसे डाउनलोड करने के बजाए नए टेक्स्ट दस्तावेज़ में स्विच करता है (जैसे पाठ/ऑक्टेट-स्ट्रीम ऐसा लगता है)।
मुझे फ़्लैश समाधान नहीं चाहिए, जावास्क्रिप्ट/एचटीएमएल 5 केवल सुझाव कृपया।
चीयर्स, जोश
संभव का उपयोग कर FileSaver इंटरफेस प्रदान करता है पाया का डुप्लिकेट [क्या डेटा का उपयोग करते समय सुझाए गए फ़ाइल नाम निर्दिष्ट करने का कोई तरीका है: यूआरआई?] (http://stackoverflow.com/questions/283956/is-there-any-way-to-specify-a- सुझाया गया- filename- जब-उपयोग-डेटा-यूरी) –
यह सुझाए गए लिंक का डुप्लिकेट प्रतीत होता है, यह सुनिश्चित नहीं है कि मुझे खोजे जाने पर मुझे यह क्यों नहीं मिला। इस प्रश्न का उत्तर देने वाले लोग लिंक का पालन करना चाहिए। –