Java 附加到Jtextarea,显示扫描内容的文件位置isntead

Java 附加到Jtextarea,显示扫描内容的文件位置isntead,java,jtextarea,jfilechooser,Java,Jtextarea,Jfilechooser,这不是完整的代码,但是我尝试将文件的内容附加到JTextArea中,只要有特定的案例。我打开的.txt文件包含 TEST TEST TEST COLOR 100 100 100 以下结果将发布到我的控制台进行调试 Input Instruction Not Recognized1 Input Instruction Not Recognized2 Input Instruction Not Recognized3 我的JTextArea包含 C:\Users\c3462292\Documen

这不是完整的代码,但是我尝试将文件的内容附加到JTextArea中,只要有特定的案例。我打开的.txt文件包含

TEST
TEST
TEST
COLOR 100 100 100
以下结果将发布到我的控制台进行调试

Input Instruction Not Recognized1
Input Instruction Not Recognized2
Input Instruction Not Recognized3
我的JTextArea包含

C:\Users\c3462292\Documents\MuseLog.txt
但是我希望它能显示唯一有效的行,即color100,并在JTextAera中按顺序显示调试好的行,但我似乎无法理解,希望有人能提供帮助

         JMenuItem mntmOpen = new JMenuItem("Open");
    mntmOpen.setIcon(new ImageIcon(Fucksakes.class.getResource("/Icons/Open.png")));
    mntmOpen.setFont(new Font("Roboto Condensed", Font.PLAIN, 14));
    mnFile.add(mntmOpen);
    mntmOpen.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
        JFileChooser broswer = new JFileChooser();
        int result = broswer.showOpenDialog(contentPane);
        if (result == JFileChooser.APPROVE_OPTION) {
        File selectFile = broswer.getSelectedFile();
        try {
        Scanner sc = new Scanner(selectFile);
        while (sc.hasNext()) {
            lineNo++;
            process(sc.nextLine());
        }
        textArea.append(selectFile + "");
        } catch (FileNotFoundException e1) {
        // TODO Auto-generated catch block
        JOptionPane.showMessageDialog(contentPane, "Cannot Open file");
        }
        }
        }
        });

public static void process(String s) {
    String[] a = s.split(" ");

    // Strings can be used in switch statements in Java 7 and later versions
    try {
        switch (a[0]) {
            case "COLOR":
                currentColor = new Color(Integer.parseInt(a[1]), Integer.parseInt(a[2]), Integer.parseInt(a[3]));
                break;

            default:
                System.out.println("Input Instruction Not Recognized");
        }
在上面的代码中,您只需在JTextArea上调用一次
append(…)
,并且它会将您看到的文本追加,因此这不应该完全出乎意料。不,你甚至都没有尝试在文件中添加任何文本,所以如果我是你,我要做的第一件事就是编辑代码,这样它就能做到这一点


接下来,您只测试
a
数组中的第一个字符串,而
a[0]
只包含测试。因此,开关块当然会转到默认行。

您是否有机会给我举个例子,因为我很难理解如何将不同的行附加到JTextArea@Savage:什么例子?你的代码有太多的问题——分而治之,试图一次解决一件事。你能帮我把“输入指令无法识别”放到我的jtextarea中吗?“我一整天都在和这件事作斗争。”@Savage:?您已经知道如何将文本附加到JTextArea——您已经在这样做了,只需做同样的事情。调用append方法。我不知道应该使用哪种方法,我已经尝试过了