Example Analysis of inputstreamreader
This article shares with you the content of the sample analysis of inputstreamreader. The editor thinks it is very practical, so share it with you as a reference and follow the editor to have a look.
After the inputstreamreader program creates or allocates resources, it does not release resources properly, which will result in inappropriate resource release defects. In a busy program environment, the Java virtual machine may not be able to effectively use the Icano object.
Inputstreamreader defect sample
In the following Java method, the finalize O-stream object is not properly released after creation, and the program relies on the garbage collection mechanism of the Java virtual machine to release the Imax O-stream resources. in fact, the program cannot determine when to call the virtual machine's finalize () method. In a busy program environment, the Java virtual machine may not be able to effectively use the Icano object.
PublicvoidprocessFile (StringfilePath) {try {FileInputStreamfis=newFileInputStream (filePath); InputStreamReaderisr=newInputStreamReader (fis); BufferedReaderbr=newBufferedReader (isr); Stringline= ""; while ((line=br.readLine ())! = null) {processLine (line);}} catch (FileNotFoundExceptione) {log (e);} catch (IOExceptione) {log (e);}}
PublicvoidprocessFile (StringfilePath) {
Try {
FileInputStreamfis=newFileInputStream (filePath)
InputStreamReaderisr=newInputStreamReader (fis)
BufferedReaderbr=newBufferedReader (isr)
Stringline= ""
While ((line=br.readLine ())! = null) {
ProcessLine (line)
}
} catch (FileNotFoundExceptione) {
Log (e)
} catch (IOExceptione) {
Log (e)
}
}
Inputstreamreader sample repair recommendations:
The Ibank O object should be released in the finally block.
PublicvoidprocessFile (StringfilePath) {FileInputStreamfis=null;InputStreamReaderisr=null;BufferedReaderbr=null;try {fis=newFileInputStream (filePath); isr=newInputStreamReader (fis); br=newBufferedReader (isr); Stringline= ""; while ((line=br.readLine ())! = null) {/ / processLine (line);}} catch (FileNotFoundExceptione) {/ / log (e);} catch (IOExceptione) {/ / log (e);} finally {if (brushed null) {try {br.close ();} catch (IOExceptione) {/ / log (e);} if (isrrabbit null) {try {isr.close () } catch (IOExceptione) {/ / log (e);}} if (fissure null) {try {fis.close ();} catch (IOExceptione) {/ / log (e);}
Thank you for reading! This is the end of this article on "sample Analysis of inputstreamreader". I hope the above content can be of some help to you, so that you can learn more knowledge. if you think the article is good, you can share it for more people to see!