Я только что начал свою поездку в колледж («Yay»). Я также новичок на сайте, поэтому не стесняйтесь читать мне лекции о том, что я, возможно, сделал не так, как задавать вопросы.Запись файла в java
Мне дали проект, который уже был градуирован и все, и программа должна == >>сначала прочитать строки стандартного ввода (имя входного файла с помощью клавиатуры) и для каждой строки ввода, если пользователь переходит к выходу, приложение завершается; в противном случае приложение интерпретирует строку как имя текстового файла. Приложение создает или воссоздает этот файл и записывает в него две строки вывода, имя файла и текущую дату и время. Затем приложение закрывает файл, открывает его для чтения и записывает его содержимое в стандартный вывод. Приложение записывает на стандартный вывод имя файла, заключенного в квадратные скобки. После записи имени файла приложение записывает содержимое файла с каждой строкой с префиксом соответствующей строки , полным двоеточием и пробелом. Я изложил это так, как это сделал мой профессор, поэтому я извиняюсь за любые неясные заявления. Вот что я получил за это:
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.io.File;
import java.io.ObjectInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Scanner;
public class Project1
{
public static void main() throws IOException
{
String input = "";
while(!sc.equals("exit"))
{
System.out.println("Enter file here!\n Type 'exit' to terminate");
Scanner sc = new Scanner(System.in);
input = sc.nextLine();
try
{
File file = new File (input,".txt"); // Creates pointer to a file.
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
file.createNewFile();
file.getAbsolutePath();
printFileAndDate(file);
}
catch(IOException e)
{
System.out.print("Something wrong :(");
e.printStackTrace();
}
}
System.exit(0);
}
static void printFileAndDate(File temp)
{
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
System.out.println("[ " + temp.getPath() + " ]");
System.out.println(dateFormat.format(cal.getTime()));
}
}
То, что я пытался сделать там было следующее:
-get User Input => Сохранить вход в файл => метод вызова «printFileAndDate» и распечатать файл наряду с текущей датой и временем в правильном формате.
Однако, всякий раз, когда я запускаю его, он всегда дает мне ошибку исключения, а это значит, что файл никогда не был создан или он не смог его найти.
вы можете разместить до трассировки стека? опубликовать ошибки исключения? –
Всегда указывайте точную ошибку в вопросе. –
это запрос «обзор кода», см. Http://codereview.stackexchange.com для этого в будущем. –