के साथ जावा फ़ाइल इनपुट मुझे दो फ़ंक्शन में एक बड़ी फ़ाइल पढ़ने के लिए किसी प्रकार की इनपुट स्ट्रीम चीज (जैसे इनपुट इनपुट या फ़ाइल चैनल) में एक फ़ंक्शन लिखना होगा: एक बार कुछ क्षमताओं को पूर्ववत करने के लिए, और दूसरा "असली" काम करने के लिए। मैं नहीं चाहता कि पूरी फाइल एक बार में स्मृति में लोड हो (जब तक यह छोटा न हो)।रिवाइंड()/रीसेट() क्षमता
क्या कोई उचित जावा क्लास है जो इस क्षमता को प्रदान करती है? FileInputStream स्वयं चिह्न()/रीसेट() का समर्थन नहीं करता है। BufferedInputStream करता है, मुझे लगता है, लेकिन मुझे स्पष्ट नहीं है कि इसे पूरी फ़ाइल को ऐसा करने के लिए स्टोर करना है या नहीं।
सी इतना आसान है, आप बस fseek(), ftell(), और रिवाइंड() का उपयोग करें। :-(
जेसन, मेरा उत्तर अन-स्वीकार करते हैं और ले कृपया [इस एक।] (Http://stackoverflow.com/a/18665678/3474) यह अच्छा है क्योंकि यह मानक मार्कबल 'इनपुटस्ट्रीम' एपीआई का एक कुशल कार्यान्वयन प्रदान करता है; 'इनपुटस्ट्रीम' का कोई उपभोक्ता पूरी फ़ाइल लोड किए बिना इसका उपयोग कर सकता है। – erickson