2012-11-27 21 views
6

मैं अपने जावा कोड संकलित और चलाने के लिए ग्रहण का उपयोग कर रहा हूं।धागे "मुख्य" java.io.FileNotFoundException में अपवाद: त्रुटि

यहां मुझे त्रुटि मिल रही है।

Exception in thread "main" java.io.FileNotFoundException: file.txt (The system cannot find the file specified) 
    at java.io.FileInputStream.open(Native Method) 
    at java.io.FileInputStream.<init>(Unknown Source) 
    at java.util.Scanner.<init>(Unknown Source) 
    at helloworld.main(helloworld.java:9) 

यहाँ मेरी कोड है

import java.io.File; 
import java.io.IOException; 
import java.util.Scanner; 


public class helloworld { 

    public static void main(String[] args) throws IOException { 
     Scanner KB = new Scanner(new File("file.txt")); 
     while (KB.hasNext()) { 
      String line = KB.nextLine(); 
      System.out.println(line); 
     } 

    } 
} 

file.txt
मैं अपने प्रोजेक्ट में एक ही फ़ोल्डर में file.txt बनाया है।

+0

क्या आपकी फ़ाइल सीधे आपके प्रोजेक्ट फ़ोल्डर के अंतर्गत है? –

+0

यह एससीआर के तहत है, मैंने एक को बिन के नीचे भी रखा है, क्योंकि स्क्रै काम नहीं करता है। – Mowgli

+1

'नई फ़ाइल ("file.txt") प्रिंट करने का प्रयास करें। मौजूद है()' क्या यह 'सत्य' उत्पन्न कर रहा है? यदि नहीं, तो 'नई फ़ाइल ("file.txt") प्रिंट करने का प्रयास करें। getAbsoluteFile()' क्या आप इसकी अपेक्षा करते हैं? – amit

उत्तर

19

आपकी फ़ाइल सीधे प्रोजेक्ट फ़ोल्डर के अंतर्गत होनी चाहिए, न कि किसी अन्य उप-फ़ोल्डर के अंदर।

इसलिए, यदि आपका प्रोजेक्ट फ़ोल्डर MyProject है, यह फ़ोल्डर संरचना है (हालांकि पूरा नहीं) होना चाहिए जैसे: -

MyProject +- src + 
      |  | 
      |  +-- Your source file 
      +- file.txt 

यह फ़ोल्डर नहीं होना चाहिए।


या, आप में फ़ाइल के लिए खोज करने के लिए प्रोजेक्ट फ़ोल्डर के लिए निम्न पथ रिश्तेदार दे सकते हैं src folder: -

new File("src/file.txt"); 
+0

यह मेरे लिए काम करता है। + से @ रोहित –

+0

आह शानदार। अनुमान लगाया नहीं था। – gbhall

5

फाइल करने के लिए पूरा पथ गुजर प्रयास करें, कहते हैं:

new File("/usr/home/mogli/file.txt") 

या आप खिड़कियों में हैं:

new File("C:/Users/mogli/docs/file.txt") 
2

या तो पालन @rohit जैन दृष्टिकोण या अपने फ़ाइल तरह के लिए निरपेक्ष पथ दे:

Scanner KB = new Scanner(new File("C:/JsfProjects/Project/file1.txt")); 
      while (KB.hasNext()) { 
       String line = KB.nextLine(); 
       System.out.println(line); 
      } 
+1

+1 पिछड़े-स्लैश के बजाय आगे-स्लैश '/' का उपयोग करने पर विचार करें। –

+0

@ Eng.Fouad धन्यवाद, मैं जवाब अपडेट करूँगा :) – PermGenError

1

Windows में इस

"C:\\Users\\mogli\\docs\\file.txt" 

यह मेरे लिए काम किया है जैसे वास्तविक पथ देने का प्रयास करें।

संबंधित मुद्दे