2011-09-17 18 views
9

मेरे पास दो खुली फ़ाइल ऑब्जेक्ट्स हैं, dest और src। फाइल ऑब्जेक्ट dest लिखने के लिए खोला गया है, फाइल के भीतर कुछ ऑफसेट पर तलाश की स्थिति के साथ, और फ़ाइल ऑब्जेक्ट src पढ़ने के लिए खोला गया है। मुझे बस इतना करना है कि वर्तमान स्थिति से src में ईओएफ में पढ़ा जाए और सामग्री को dest पर जितनी जल्दी हो सके स्थानांतरित करें।क्या पाइथन शून्य-प्रति I/O का समर्थन करता है?

यदि मैं जावा में प्रोग्रामिंग कर रहा था, तो मैं शून्य प्रतिलिपि फ़ाइल I/O करने के लिए FileChannel#transferTo() विधि का उपयोग कर सकता था।

क्या पायथन भी शून्य प्रतिलिपि का समर्थन करता है?

उत्तर

7

संस्करण 3.3 के बाद से, पायथन में os.sendfile है, जो विभिन्न यूनिक्स प्रकारों 'sendfile(2) शून्य-प्रति I/O इंटरफेस में इंटरफेस करता है। यह फाइल डिस्क्रिप्टर पर काम करता है, सामान्य फ़ाइल जैसी वस्तुओं नहीं। पुराने पायथन के लिए, py-sendfile है।