के साथ एक फ़ाइल को ओवरराइट करें मैं अपने वेबपैड की स्थिति को बचाने के लिए HTML5 FileWriter API का उपयोग कर रहा हूं। मेरे पास जेएस का थोड़ा सा समय है जो ऐसा करने के लिए समय-समय पर FileWriter.write
पर कॉल करता है (इसलिए, समय के साथ, write
विधि को कई बार कहा जाता है)। डिफ़ॉल्ट रूप से FileWriter API उन फ़ाइलों को लिखने के लिए 'एपेंड' दृष्टिकोण का उपयोग करता है जो मेरी आवश्यकताओं के अनुरूप नहीं है क्योंकि मैं फ़ाइल सामग्री को ओवरराइट नहीं करना चाहता हूं।एचटीएमएल 5 फाइलवाइटर
मैं पहली बार इस की कोशिश की:
this._writer.seek(0);
this._writer.write(content);
यह काम नहीं कर रहा है जब आप एक पाठ फ़ाइल की सामग्री की तुलना में कम लिख रहे हैं। मैं तो इस की कोशिश की:
this._writer.truncate(0);
this._writer.write(content);
इस कोड को फ़ाइल स्पष्ट और फिर मेरी नई सामग्री लिखने के लिए माना जाता है, लेकिन मैं निम्नलिखित त्रुटि जब write
विधि कहा जाता है हो रही है:
Uncaught InvalidStateError: An operation that depends on state cached in an interface object was made but the state had changed since it was read from disk.
अजीब बात: जब मैं कोड (ब्रेकपॉइंट के साथ) डीबग करता हूं, तो त्रुटि नहीं होती है, जैसे कि FileWriter.truncate
एक असीमित विधि थी ...
मैं यहां किसी भी विचार से फंस गया हूं?
मैं क्रोम 30.0.1599.69
आप विस्तार से बता सकते हैं? "डी" क्या है? – htulipe
@htulipe, यह मेरा jQuery है। परिभाषित ऑब्जेक्ट मैं अधिसूचित होने के लिए बाहरी रूप से उपयोग करता हूं जब दोनों छंटनी और लेखन किया जाता है। लिखने के दौरान आप इसे अवहेलना कर सकते हैं या कोई अन्य कोड जोड़ सकते हैं जिसे आप निष्पादित करना चाहते हैं। –
@htulipe कृपया इसे उत्तर के रूप में चिह्नित करें, अगर यह समस्या हल करता है। –