मैं अपाचे पीओआई जावा का उपयोग कर रहा हूं और पंक्तियों की कुल संख्या प्राप्त करना चाहता हूं जो खाली नहीं हैं। मैंने अपने सभी स्तंभों के साथ पूरी पंक्ति को सफलतापूर्वक संसाधित किया। अब मुझे लगता है कि मुझे कई पंक्तियों के साथ एक्सेल शीट मिलती है, न कि एक पंक्ति ... तो इसके बारे में कैसे जाना है? मैं पंक्तियों की कुल संख्या (int n) और तब लूप प्राप्त करने के बारे में सोच रहा था जब तक कि मैं < = n लेकिन सुनिश्चित नहीं हूं। Apache POI संस्करण 3.8:अपाचे पीओआई पंक्ति संख्या
सुझाव बहुत स्वागत :)
नोट कर रहे हैं। मैं एक्सएलएसएक्स प्रारूप से निपट नहीं रहा हूं ... केवल एक्सएलएस।
हाँ मैं इस कोड की कोशिश की लेकिन बदले में 20 हो गया .... जो मैं केवल 5 पंक्तियाँ
FileInputStream fileInputStream = new FileInputStream("COD.xls");
HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream);
HSSFSheet worksheet = workbook.getSheet("COD");
HSSFRow row1 = worksheet.getRow(3);
Iterator rows = worksheet.rowIterator();
int noOfRows = 0;
while(rows.hasNext()) {
HSSFRow row = (HSSFRow) rows.next();
noOfRows++;
}
System.out.println("Number of Rows: " + noOfRows);
आपने वास्तव में क्या प्रयास किया है और क्या काम नहीं कर रहा है? क्या आप कुछ कोड प्रदान कर सकते हैं? – nansen
यह अच्छा नहीं है लेकिन मुझे लगता है कि यह कैसे किया जाता है। आप HSSFSheet को सीधे फ़ोरैच लूप में उपयोग कर सकते हैं क्योंकि यह Iterable लागू करता है। वे इसे भयानक स्प्रेड शीट प्रारूप (एचएसएसएफ) को कुछ भी नहीं कहते हैं :(हो सकता है कि आप अपेक्षित 5 पंक्तियों के बजाय 20 प्राप्त कर रहे हों क्योंकि आपके पास शून्य मानों के साथ पंक्तियां हैं। आपको कोशिकाओं पर भी पुनरावृत्ति करना होगा और सभी पंक्तियों को छोड़ना होगा केवल शून्य मानों के साथ। –
nansen
मुझे लगता है कि मैंने इसे हल किया है ... क्योंकि मैंने एक्सेल शीट में मेनू छोड़ दिया है, इसलिए उन सूचियों में कहीं भी मौजूद हैं। अब यह काम कर रहा है और सही पंक्ति संख्या प्रदर्शित कर रहा है –