मैं एक एकीकृत लॉग फ़ाइल व्यूअर के साथ एक सॉफ्टवेयर उत्पाद पर काम कर रहा हूं। समस्या यह है कि, वास्तव में बड़ी फ़ाइलों के लिए इसकी धीमी और अस्थिर है क्योंकि जब आप लॉग फ़ाइल देखते हैं तो यह पूरी फ़ाइल को स्मृति में पढ़ता है। मैं एक नया लॉग फ़ाइल व्यूअर लिखना चाहता हूं जो इस समस्या को संबोधित करता है।बड़ी लॉग फ़ाइलों के लिए मैं जावा टेक्स्ट फ़ाइल व्यूअर कैसे लिखूं
बड़ी टेक्स्ट फ़ाइलों के लिए दर्शकों को लिखने के लिए सबसे अच्छे अभ्यास क्या हैं? नोटपैड ++ और वीआईएम जैसे संपादकों ने इसे कैसे लागू किया? मैं जावा के टेबल मॉडल के साथ एक buffered द्वि-दिशात्मक पाठ स्ट्रीम रीडर का उपयोग करने के बारे में सोच रहा था। क्या मैं सही लाइनों के साथ सोच रहा हूं और जावा के लिए ऐसे स्ट्रीम कार्यान्वयन उपलब्ध हैं?
संपादित करें: पाठ की प्रत्येक पंक्ति की शुरुआत की स्थिति को सूचीबद्ध करने के लिए फ़ाइल के माध्यम से चलाने के लिए उपयुक्त होगा ताकि कोई जानता है कि कहां से खोजना है? मुझे शायद लाइनों की मात्रा की आवश्यकता होगी, इसलिए शायद कम से कम एक बार फाइल को स्कैन करना होगा?
संपादित 2: मैंने अपना कार्यान्वयन नीचे दिए गए उत्तर में जोड़ा है। कृपया इस पर टिप्पणी करें या इसे संपादित करने के लिए इसे संपादित करें ताकि हम/अधिक सर्वोत्तम अभ्यास कार्यान्वयन पर पहुंच सकें या अन्यथा अपना स्वयं का प्रदान कर सकें।
धन्यवाद, मैं भी FileChannel के अलावा जो साबित हो सकता है उपयोगी –