Я хочу, чтобы java создал новый файл с… новым PrintStream… все работает нормально, но я не могу найти файл в своем проекте

1

Поэтому у меня есть простой код, похожий на цифровой математический тест (только на один вопрос). Я хочу, чтобы программа сканировала то, что я набираю во входном окне, и распечатываю результаты, был ли я прав или не прав в новом текстовом файле. Проблема в том, что я не могу найти текстовый файл в своем проекте в 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.");
    }
  }
}
  • 0
    блоки кода в stackoverflow форматируются так, чтобы в каждой строке было по 4 пробела. Обратные галочки только для встроенного кода. При публикации / редактировании справа есть полезное поле «как отформатировать», в котором указывается синтаксис, который вы можете использовать здесь.
  • 0
    экранируйте кавычки с помощью обратной косой черты, например String s = "Answer is \" 500 \ "";
Теги:

4 ответа

1
Лучший ответ

Мой первый инстинкт о том, что вы не можете увидеть свой файл, просто не обновил ваш проект. Попробуйте щелкнуть правой кнопкой мыши свой проект> щелкнуть "Обновить" и посмотреть, появляется ли ваш текстовый файл. Eclipse не обновляет вашу файловую систему в режиме реального времени, поэтому вы должны обновить свой проект, чтобы увидеть какие-либо обновления.

Для кавычек вы должны избегать кавычек с предыдущей косой чертой, например:

System.out.println("She said, \"I don't eat vegetables.\"");

Это будет выводить:

Она сказала: "Я не ем овощей".

  • 1
    Похоже, я сделал ошибку новичка, я продолжал пытаться обновить папку src, спасибо!
  • 0
    Wewt! Приятно слышать, чувак. Первый ответ принят! Потрясающие.
0

Вам нужно указать указанный файл внутри папки каталога проекта (вне папки 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?"

Это напечатает:

"Привет, как твой день?"

Если вы хотите распечатать фактическую обратную косую черту, вы делаете обратную косую черту перед обратной косой чертой.

0

В зависимости от ОС, в которой вы находитесь, PrintStream file = new PrintStream(new File("Test results.txt")); может быть проблемой из-за пробелов. Тем не менее, почему вы используете PrintStream, а не BufferedWriter?

0

Отбросьте файл в базе данных проекта в eclipse, а затем получите доступ к файлу, используя только имя.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню