
import javax.swing.*;
import java.io.*;
import java.lang.*;
import java.awt.*;
class MegaViewer1 extends JFrame
{
JTabbedPane jtp1=new JTabbedPane();
JPanel jp1=new JPanel();
JTextArea t1=new JTextArea();
MegaViewer1() throws Exception
{
super("MegaViewer");
FileReader f=new FileReader("Eight.java");
BufferedReader brk=new BufferedReader(f);
String s;
while((s=brk.readLine())!=null)
t1.setText(s);
jp1.add(t1);
jtp1.addTab("Tab1",t1);
add(jtp1);
}
public static void main(String args[]) throws Exception
{
MegaViewer1 mv1=new MegaViewer1();
mv1.pack();
mv1.setVisible(true);
mv1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
The issue with this is only the last character is been displayed on the tabbed frame(i.e a "}"). Any suggestions ?

Use append() method instead of setText().
Here is your modified code:
import javax.swing.*;
import java.io.*;
import java.lang.*;
import java.awt.*;
class MegaViewer1 extends JFrame
{
JTabbedPane jtp1=new JTabbedPane();
JPanel jp1=new JPanel();
JTextArea t1=new JTextArea();
MegaViewer1() throws Exception
{
super("MegaViewer");
FileReader f=new FileReader("A.java");
BufferedReader brk=new BufferedReader(f);
String s;
while((s=brk.readLine())!=null){
t1.append(s);
}
jp1.add(t1);
jtp1.addTab("Tab1",t1);
add(jtp1);
}
public static void main(String args[]) throws Exception
{
MegaViewer1 mv1=new MegaViewer1();
mv1.pack();
mv1.setVisible(true);
mv1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}