आज मैं जावा क्रमांकन और deserialization ("अजीब" क्योंकि मुझे समझ नहीं आता)जावा की कम डिस्क स्थान कितनी कम हो सकती है। कब। EOFException
मैं serializing गया था और एक linux साझा निर्देशिका से एक वस्तु deserializing में अजीब व्यवहार में आए है। जबकि सब कुछ क्रमबद्ध करने के बिना किसी भी समस्या के काम किया, लेकिन जब मैंने उसी फ़ाइल को deserialize करने की कोशिश की तो यह java. io. EOFException
फेंकता है। इसके अलावा deserializing केवल इस नव निर्मित फाइल के लिए विफल रहा था और उस निर्देशिका में अन्य सभी पुरानी फाइलों के लिए काम कर रहा था।
इसलिए मैंने इंटरनेट पर खोज की और एक धागा पाया जो कम डिस्क स्थान भी इस त्रुटि का कारण बन सकता है।
इसलिए मैंने कुछ अस्थायी फ़ाइलों और वॉयला को साफ किया। मुझे समझ में नहीं आता कि कम डिस्क स्थान केवल deserialization को प्रभावित कर सकता है और serialization नहीं?
मैं अपाचे कॉमन्स SerializationUtils
कक्षा का उपयोग कर रहा हूं। नीचे क्रमिकरण और deserialization के लिए कोड
SerializationUtils. serialize(myObject, new FileOutputStream(new File(sharePath+FILEName) ;
MyObject object=SerializationUtils. deserialize(new FileInputStream(new File(sharePath+FILEName);
अगर कोई इस व्यवहार को समझा सकता है तो यह वास्तव में सहायक होगा। मुझे लगता है कि यह Serialization में एक बग संदेह हो सकता है शायद IOException gobbling।
धन्यवाद
यह तब तक नहीं हो सकता जब तक कि आप फ़ाइल लिखते समय पूर्व 'IOException' को अनदेखा नहीं करते। – EJP
चूंकि मैं हाथ से क्रमबद्ध नहीं कर रहा हूं, इसलिए IOExceptions को SerializationUtils द्वारा प्रबंधित किया जाता है। यह उनके जावदोक में है। –
तो यह उनकी समस्या है, या उनके खराब एपीआई डिजाइन है। – EJP