2016-11-04 30 views
-1

这不是完整的代码,但是我试图追加文件的内容到JTextArea中,只要具有特定的情况。我的txt文件,我打开包含附加到Jtextarea显示文件位置不是扫描内容

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 

但是我也想显示唯一有效的行是COLOR 100 100 100,并且还在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"); 
     } 

回答

0

你只在JTextArea中在上面的代码中调用append(...)一次,并将其添加你所看到的文本,所以不应该作为一个完整的惊喜。没有你甚至试图在文件中追加任何文本,所以如果我是你,我会做的第一件事就是编辑代码,以便它能做到这一点。

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

+0

有没有什么机会可以给我一个例子,因为我很难理解如何将不同的行添加到JTextArea – Savage

+0

@Savage:例子是什么?你的代码中存在太多问题 - 分而治之,并尝试一次解决一件事。 –

+0

你能帮我把“输入指令不被识别”放入我的jtextarea吗?我一整天都在苦苦挣扎。 – Savage