JavaRush /Java Blog /Random-TL /Loop para sa try-catch
dimaMJ
Antas
Craiova

Loop para sa try-catch

Nai-publish sa grupo
Ang programa ay simple, ipinasok ng gumagamit ang pangalan ng file, kung mayroong ganoong file, binabasa ito, atbp., Kung hindi, ang isang pagbubukod ay na-trigger at ang user ay dapat na muling ipasok ang pangalan ng file, at iba pa hanggang sa pangalan ng file. ay tama. Narito ang code: public class Solution { public static void main(String[] args) throws Exception { InputStream inStream = filego(); OutputStream outStream = new PrintStream(System.out); while(inStream.available()>0) { int data = inStream.read(); outStream.write(data); } inStream.close(); outStream.close(); } public static InputStream filego() throws Exception { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String FileName = reader.readLine(); InputStream inStream = null ; try { inStream = new FileInputStream(FileName); } catch (Exception e) { System.out.println("Файл не найден, введите еще раз"); filego(); } return inStream; } } Kapag sinimulan ang programa, kapag ipinasok ko ang maling pangalan, gumagana ang lahat, kapag ipinasok ko ang tama, itinapon nito ang Exception sa thread na "main" java.lang.NullPointerException, iyon ay, sa ilang kadahilanan ay nagbabalik ito ng null , ano ba ang mali ko, baka malabo ang mata ko o may mali naiintindihan ko, pakisabi sa akin) Gusto ko talagang malaman kung paano gumawa ng try-catch loop nang tama. Sinubukan ko ito nang walang hiwalay na paraan, gamit lang habang, wala ring magandang lumabas)
At natukoy ko ba nang tama ang uri ng halaga ng pagbabalik?
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION