扫描仪将接受用户输入但无法找到该文件

时间:2013-10-25 22:32:31

标签: java runtime java.util.scanner

这是一个程序,用于读取文件并打印出一些编辑过的文本。代码将编译问题是它将读取用户输入,但会说文件在那里时找不到文件。我觉得我错过了什么。我是全新的,所以对我来说很容易。

2 个答案:

答案 0 :(得分:1)

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

public class MainTest {

    public static void main(String args[]) {
      //  if (args[0] != null)
            readFile();
    }

    public static void readFile() { // Method to read file

        Scanner inFile = null;
        String out = "";
        try {
            Scanner input = new Scanner(System.in);
            System.out.println("enter file name");
            String filename = input.next();
            File in = new File(filename); // ask for the file name
            inFile = new Scanner(in);


            int count = 0;
            while (inFile.hasNextLine()) { // reads each line
                String line = inFile.nextLine();


                for (int i = 0; i < line.length(); i++) {
                    char ch = line.charAt(i);
                    out = out + ch;

                    if (ch == '{') {
                        count = count + 1;
                        out = out + " " + count;
                    } else if (ch == '}') {
                        out = out + " " + count;
                        if (count > 0) {
                            count = count - 1;
                        }
                    }
                }
            }
            System.out.println(out);
        } catch (FileNotFoundException exception) {
            System.out.println("File not found.");
        }
        inFile.close();
    }
}

答案 1 :(得分:0)

您可以使用System.getProperty("user.dir")查找Scanner寻找文件的位置。你应该确定你的文件位于这里。