2009-03-18 4 views
5

जावा का उपयोग कर फ़ाइल में एक बाइट को बदलने का सबसे अच्छा तरीका क्या है? मैंने इसे कई तरीकों से लागू किया है। एक सभी बाइट सरणी हेरफेर का उपयोग करता है, लेकिन यह उपलब्ध स्मृति की मात्रा के प्रति अत्यधिक संवेदनशील है और पिछले 50 एमबी या उससे अधिक स्केल नहीं करता है (यानी मैं आउटऑफमेमरी त्रुटियों के बिना 100 एमबी लाइट बाइट [] आवंटित नहीं कर सकता)। मैंने इसे एक और तरीका भी लागू किया जो काम करता है, और तराजू, लेकिन यह काफी हैकी लगता है।आप एक फ़ाइल में एक बाइट कैसे बदलेंगे?

यदि आप जावा आईओ गुरु हैं, और आपको बहुत बड़ी फाइलों (200-500 एमबी) के साथ संघर्ष करना पड़ा, तो आप इससे कैसे संपर्क कर सकते हैं?

धन्यवाद!

+0

क्या आप बाइट के लिए खोज रहे हैं, या आप पहले से ही इसकी स्थिति जानते हैं? –

उत्तर

13

मैं RandomAccessFile का उपयोग करता हूं, उस स्थिति की तलाश करता हूं जिसे मैं बदलना चाहता हूं और परिवर्तन लिखना चाहता हूं।

6

यदि मैं बस एक बाइट बदलना चाहता था, तो मैं पूरी फ़ाइल को स्मृति में पढ़ने से परेशान नहीं होता। मैं RandomAccessFile, seek का उपयोग बाइट में write पर करता हूं, और फ़ाइल को बंद करता हूं।

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