因此,我的数据存储在一个名为 log.txt 的文件中,我想在 GUI 中查看它的内容。所以我有这两个我正在使用的类,一个是 Engine,我在其中读取 log.txt 文件,另一个是 GUI,用于应用 Engine 中使用的方法。
所以,在我的引擎中,我有这些代码:
public void loadLog()
{
try
{
java.io.File cpFile = new java.io.File( "log.txt" );
if ( cpFile.exists() == true )
{
File file = cpFile;
FileInputStream fis = null;
BufferedInputStream bis = null;
DataInputStream dis = null;
String strLine="";
String logPrint="";
fis = new FileInputStream ( file );
// Here is BufferedInputStream added for fast reading
bis = new BufferedInputStream ( fis );
dis = new DataInputStream ( bis );
// New Buffer Reader
BufferedReader br = new BufferedReader( new InputStreamReader( fis ) );
while ( ( strLine = br.readLine() ) != null )
{
StringTokenizer st = new StringTokenizer ( strLine, ";" );
while ( st.hasMoreTokens() )
{
logPrint = st.nextToken();
System.out.println(logPrint);
}
log = new Log();
//regis.addLog( log );
}
}
}
catch ( Exception e ){
}
}
然后,在我的 GUI 中,我会尝试应用在我的引擎中使用的代码:
// create exit menu
Logout = new JMenu("Exit");
// create JMenuItem for about menu
reportItem = new JMenuItem ( "Report" );
// add about menu to menuBar
menuBar.add ( Logout );
menuBar.setBorder ( new BevelBorder(BevelBorder.RAISED) );
Logout.add ( reportItem );
/* --------------------------------- ACTION LISTENER FOR ABOUT MENU ------------------------------------------ */
reportItem.addActionListener ( new ActionListener()
{
public void actionPerformed ( ActionEvent e )
{
engine.loadLog();
mainPanel.setVisible (false);
mainPanel = home();
toolBar.setVisible(false);
vasToolBar.setVisible(false);
cpToolBar.setVisible(false);
add ( mainPanel, BorderLayout.CENTER );
add ( toolBar, BorderLayout.NORTH );
toolBar.setVisible(false);
mainPanel.setVisible ( true );
pack();
setSize(500, 500);
}
});
现在,
我的问题是,如何在 GUI 部分中打印出引擎方法中读取的任何内容?我希望它们位于 JLabel 或 JTextArea 内。我该怎么做?