我在阅读我正在为学校工作的一个包中的文件时遇到了困难。我需要阅读的文件," 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进行,所以任何帮助都将非常感谢。
答案 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”。