Поэтому у меня есть простой код, похожий на цифровой математический тест (только на один вопрос). Я хочу, чтобы программа сканировала то, что я набираю во входном окне, и распечатываю результаты, был ли я прав или не прав в новом текстовом файле. Проблема в том, что я не могу найти текстовый файл в своем проекте в eclipse, вместо этого мне нужно найти папку с проектами и найти там файл.txt. Возможно ли сделать файл.txt видимым внутри моего проекта в eclipse? Благодарю!... также, как вы делаете кавычки внутри кавычек в java? Я имею в виду: "Ты ответил" 500 "".
package Default;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.util.Scanner;
public class MathTest {
public static void main(String args[])
throws FileNotFoundException {
String Canswer = "270";
String X;
PrintStream file = new PrintStream(new File("Test results.txt"));
Scanner scan = new Scanner(System.in);
System.out.println("This is a test, please answer the question correctly.");
System.out.println("What is 50*50/100-20+(800/20) ?");
X = scan.nextLine();
System.out.println("That concludes this test, your test results will be available"
+ " in ´Test results.");
if (X.equals(Canswer)) {
file.println("You answered " + X);
file.println("That is correct, well done!");
} else {
file.println("You answered " + X + ".");
file.println("The correct answer was " + Canswer);
file.println("You have failed this test.");
}
}
}
Мой первый инстинкт о том, что вы не можете увидеть свой файл, просто не обновил ваш проект. Попробуйте щелкнуть правой кнопкой мыши свой проект> щелкнуть "Обновить" и посмотреть, появляется ли ваш текстовый файл. Eclipse не обновляет вашу файловую систему в режиме реального времени, поэтому вы должны обновить свой проект, чтобы увидеть какие-либо обновления.
Для кавычек вы должны избегать кавычек с предыдущей косой чертой, например:
System.out.println("She said, \"I don't eat vegetables.\"");
Это будет выводить:
Она сказала: "Я не ем овощей".
Вам нужно указать указанный файл внутри папки каталога проекта (вне папки src), затем получить доступ к нему по имени (и, если необходимо, типу).
Единственный раз, когда вам нужно указать путь, - это хранить файлы в подкаталогах, таких как "resources/images/player/player_forward.png", или если это не в.jar.
Кроме того, чтобы показать кавычки в String в Java, поместите обратную косую черту перед меткой кавычки.
Например:
String quote = "\"Life is like a box of chocolates.\"";
Он распечатает:
"Жизнь похожа на коробку конфет".
Кроме того, это похоже на использование нового символа линии:
String text = "Hello.\nHow is your day?"
Это напечатает:
"Привет, как твой день?"
Если вы хотите распечатать фактическую обратную косую черту, вы делаете обратную косую черту перед обратной косой чертой.
В зависимости от ОС, в которой вы находитесь, PrintStream file = new PrintStream(new File("Test results.txt"));
может быть проблемой из-за пробелов. Тем не менее, почему вы используете PrintStream, а не BufferedWriter?
Отбросьте файл в базе данных проекта в eclipse, а затем получите доступ к файлу, используя только имя.