如何在Netbeans中读取包中包含的文件

时间:2017-10-27 14:36:04

标签: java file netbeans

我在阅读我正在为学校工作的一个包中的文件时遇到了困难。我需要阅读的文件," InputFile1.txt"和InputFile2.txt"位于名为"实验练习3输入"的文件夹中。在"源包"文件夹中。

以下是此部分的代码:

// create necessary variables

    private static ArrayList<String> inputArrayOne = new ArrayList();
    private static ArrayList<String> inputArrayTwo = new ArrayList();
    private static String nextLine;
    private static int currentIndex = 0;
    private static int n;
    private static int swapCount = 0;
    private static String string1;
    private static String string2;


    /**
     * Main method to run
     * @param args the command line arguments
     */
public static void main(String[] args) throws FileNotFoundException {

            // assign the files to be read
            File inputOne = new File("Lab Exercise 3 Input/InputFile1.txt");
            File inputTwo = new File("Lab Exercise 3 Input/InputFile2.txt");

            // create a scanner objects to read the files
            Scanner sc = new Scanner(inputOne);
            Scanner sc2 = new Scanner(inputTwo);

            // while loop to iterate through the first file
            while(sc.hasNextLine()){

                // assign the next line of the file to a string
                nextLine = sc.nextLine();

                // add that string to an array
                inputArrayOne.add(nextLine);

            } // end while loop

            // close the first scanner
            sc.close();

我做错了什么?我尝试将文件名更改为&#34; InputFile1.txt&#34;没有任何改变。这项任务将于今晚10/27/17晚上11:59进行,所以任何帮助都将非常感谢。

3 个答案:

答案 0 :(得分:0)

我想你错过/

File inputOne = new File("/Lab Exercise 3 Input/InputFile1.txt");
File inputTwo = new File("/Lab Exercise 3 Input/InputFile2.txt");

你也应该把你的主要方法放在课堂上。

public class Example
{
     public static void main(String[] args)
     {
      }
}

答案 1 :(得分:0)

尝试获取当前目录并将其添加到文件位置

String dir = System.getProperty("user.dir");
File inputOne = new File(dir + "\\Lab Exercise 3 Input\\InputFile1.txt");

修改

我将名为InputFile1.txt的文件放入Lab Exercise 3 Input文件夹中名为Source Packages的文件夹中

然后拼凑一小段代码,它按预期工作:

String dir = System.getProperty("user.dir");
ArrayList<String> inputArrayOne = new ArrayList<>();
Scanner sc = new Scanner(new File(dir + "\\Lab Exercise 3 Input\\InputFile1.txt"));
while (sc.hasNext()) {
      inputArrayOne.add(sc.nextLine());
}

我唯一的另一个想法是您将文件保存为InputFile1.txt,但它也保存为.txt文件,因此实际上是

InputFile1.txt.txt

答案 2 :(得分:0)

Java知道资源的概念,类路径上的“文件”以及.class文件,并且可能打包在单个应用程序.jar中。因此,路径使用斜杠(> stringr::str_replace_all(df$variable,replacement$word,replacement$replacment) [1] "hi my name is this" "hi friend" )并且区分大小写。此外,/也不能使用,因为te资源可能被打包在jar中。当然,资源是只读的。

File

还有一个带有字符集的Scanner构造函数,因此你可以告诉该文件是例如“UTF-8”。