Проблема с чтением файла - не удается отобразить на консоли - PullRequest
0 голосов
/ 03 февраля 2020

В настоящее время я работаю с JFileChooser и использую его, чтобы написать файл, а затем отобразить содержимое файла. Я действительно не знаю, как описать мою проблему, кроме как показывать пример того, как я хочу, чтобы мой код отображался в консоли. Я включил мой код внизу. Мой код работает нормально, я просто не могу понять, как получить отображение, как я хочу, чтобы он выглядел. Не могли бы вы мне помочь? (:

enter image description here

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;


public class PersonReader
{

    public static void main(String[] args)
    {
        try
        {
            PrintWriter out;
            File yourFile;
            JFileChooser fc = new JFileChooser();
            String line;
            String outFileName;
            String defaultFileName = "default.txt";
            int lineCount = 0;

            File workingDirectory = new File(System.getProperty("user.dir"));
            fc.setCurrentDirectory(workingDirectory);

            if (fc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION)
            {
                yourFile = fc.getSelectedFile();
                Scanner in = new Scanner(yourFile);

                outFileName = JOptionPane.showInputDialog(null, "Enter File Name: ");

                if (outFileName.trim().equals(""))
                {
                    outFileName = defaultFileName;
                }

                out = new PrintWriter(outFileName);

                while (in.hasNextLine())
                {
                    line = in.nextLine();

                    System.out.printf("\nLine %3d: %-30s", lineCount, line);
                    out.printf("Line %3d: %-30s\n", lineCount, line);
                }

                System.out.println();
                in.close();
                out.close();

            } else
            {
                JOptionPane.showMessageDialog(null, "Cancelled by User.");
                System.exit(0);
            }

        } catch (FileNotFoundException ex) {
            System.out.println("Error: File Not Found!");
        }
    }
}

1 Ответ

0 голосов
/ 03 февраля 2020

Для вашего вопроса это будет работать. Замените своим кодом.

out = new PrintWriter(outFileName);
String[] ar =new String[4];

while (in.hasNextLine())
{
    lineCount++;
    line = in.nextLine();

    if(lineCount==2){
        System.out.println("=========================================");
    }
    ar= line.split(","); 
    System.out.println(ar[0]+"\t"+ ar[1]+"\t"+ ar[2]+"\t"+ar[3] );

}

Это больше похоже на логический вопрос, чем java.

...