मुझे यहां समस्या है। जब भी मैं निर्देशिका पथ में प्रवेश करता हूं जिसे मैं अपने प्रोग्राम में एक txt फ़ाइल इनपुट करने के लिए अपने कंप्यूटर से कॉपी करता हूं, तो यह हमेशा कहता है कि फ़ाइल नहीं मिली है। क्या मेरे कोड में कुछ गड़बड़ है?

System.out.println("insert directory file = ");
FileReader file = null;
try {
    file = new FileReader(input.next());                
    BufferedReader readfile = new BufferedReader(file);              
    StringBuffer sb = new StringBuffer();
    try {
        while ((text = readfile.readLine()) != null) {
            sb.append(text);
            sb.append("\n");
        }
        readfile.close();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    text = sb.toString();
    //System.out.println(text);
    System.out.println("Data entered");
    System.out.println("Data length = "+text.length()+"\n");
} catch (FileNotFoundException e1) {
            // TODO Auto-generated catch block
    System.out.println("File not found. Pease insert the proper file directory.\n");
}
-3
asdfghjkl 8 नवम्बर 2018, 04:28

1 उत्तर

सबसे बढ़िया उत्तर

मेरे लैपटॉप में आपका कोड खंड ठीक चलता है। तो समस्या शायद यहाँ:

file = new FileReader(input.next());

क्या आपने पथ पढ़ने से पहले अन्य इनपुट के लिए अपने स्कैनर का उपयोग किया था? इसे बदलने की कोशिश कर रहा है

String path = input.next();
file = new FileReader(path);

और त्रुटि होने पर पथ प्रिंट करें यह देखने के लिए कि वास्तव में आपके FileReader को क्या दिया गया था।

catch (FileNotFoundException e1) {
    System.out.println("File not found. Pease insert the proper file directory.\n");
    System.out.println("Your input path: " + path);
}

मेरी मशीन पर काम करने वाला कोड यहां दिया गया है:

public static void main(String[] args) {
  String path = null;
  try (Scanner input = new Scanner(System.in)) {
    System.out.print("Input your option = ");
    int option = input.nextInt();
    switch (option) {
      case 1:
        System.out.println("insert directory file = ");
        String text = "";
        path = input.next();
        FileReader fileReader = new FileReader(path);
        BufferedReader readfile = new BufferedReader(fileReader);
        StringBuffer sb = new StringBuffer();
        try {
          while ((text = readfile.readLine()) != null) {
            sb.append(text);
            sb.append("\n");
          }
          readfile.close();
        } catch (IOException e) {
          e.printStackTrace();
        }
        text = sb.toString();
        System.out.println("Data entered");
        System.out.println("Data length = " + text.length() + "\n");
        break;
      default:
        System.out.println("There is nothing to do.");
        break;
    }
  } catch (FileNotFoundException e1) {
    System.out.println("File not found. Pease insert the proper file directory.");
    System.out.println("Your input path is : " + path);
  }
}

enter image description here

0
Hai Hoang 9 नवम्बर 2018, 02:34