मेरे पास कोड का एक टुकड़ा है जो फ़ाइल से डेटा पढ़ता है। मैं परीक्षण उद्देश्यों के लिए इस कोड में IOException को मजबूर करना चाहता हूं (मैं यह जांचना चाहता हूं कि कोड इस मामले में सही कस्टम अपवाद फेंकता है या नहीं)।फ़ाइल पढ़ने के दौरान फोर्स IOException
क्या ऐसी फ़ाइल बनाने का कोई तरीका है जिसे पढ़ने से संरक्षित किया गया है, उदाहरण के लिए? शायद कुछ सुरक्षा जांच से निपटने में मदद मिल सकती है?
कृपया ध्यान दें कि एक गैर-मौजूद फ़ाइल का नाम पारित करने में सहायता नहीं हो सकती है, क्योंकि FileNotFoundException में एक अलग पकड़ खंड है।
यहाँ सवाल की बेहतर समझ के लिए कोड का टुकड़ा है:
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(csvFile));
String rawLine;
while ((rawLine = reader.readLine()) != null) {
// some work is done here
}
} catch (FileNotFoundException e) {
throw new SomeCustomException();
} catch (IOException e) {
throw new SomeCustomException();
} finally {
// close the input stream
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
// ignore
}
}
}
फेंकता आप एक फ़ाइल है कि आप को पढ़ने के लिए अनुमति नहीं कर रहे हैं पढ़ने की कोशिश कर सकते हैं परिभाषित करें। लिनक्स '/ proc/kcore' पर एक अच्छी शर्त है, जैसा'/etc/shadow' है। –
कोई जवाब नहीं, लेकिन एक अवलोकन। पूर्ण स्टैक ट्रेस को संरक्षित करने के लिए आपको IOException को अपने कस्टम अपवाद के साथ लपेटना चाहिए। यानी 'नया SomeCusomException फेंक दें (ई) ' –