आपको हमेशा चलना चाहिए आपकी धाराओं को बंद कर दें, और इसे finally
ब्लॉक में करना एक अच्छा अभ्यास है। इसका कारण यह है कि finally
ब्लॉक हमेशा निष्पादित हो जाता है, और आप यह सुनिश्चित करना चाहते हैं कि धारा हमेशा बंद हो, भले ही कुछ बुरा होता है।
FileInputStream inStream = null;
try {
inStream = new FileInputStream("filename.properties");
properties.load(inStream);
} catch (FileNotFoundException e) {
System.out.println("FileNotFound");
} catch (IOException e) {
System.out.println("IOEXCeption");
} finally {
try {
inStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
आप जावा 7 का उपयोग कर रहे हैं, तो यह बहुत आसान हो जाता है, के बाद से एक नया try-with
वाक्य रचना शुरू की गई थी। फिर आप इस तरह लिख सकते हैं:
try(FileInputStream inStream = new FileInputStream("filename.properties")){
properties.load(inStream);
} catch (FileNotFoundException e) {
System.out.println("FileNotFound");
} catch (IOException e) {
System.out.println("IOEXCeption");
}
और स्ट्रीम स्वचालित रूप से बंद हो जाती है।
public class PropertiesHelper {
public static Properties loadFromFile(String file) throws IOException {
Properties properties = new Properties();
FileInputStream stream = new FileInputStream(file);
try {
properties.load(stream);
} finally {
stream.close();
}
return properties;
}
}
"गुण गुण = नया" - गलत। – duffymo