0

CSVデータをJavaアプレットにロードしようとしています。データをJavaプログラムにロードすることはできましたが、これをJavaアプレットに再作成しようとすると、問題が発生します。これが私が持っているコードですが、実行されますが何も表示されません:

import java.io.*;
import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
import java.applet.*;

    public class test3 extends java.applet.Applet
    {

        public void init() {

            try {
                java.awt.EventQueue.invokeAndWait(new Runnable() {
                public void run() {
                initComponents();
                }
                });
            } catch (Exception ex) {
            ex.printStackTrace();
            }
        }


    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable JTable1;
    private DefaultTableModel model;

    private void initComponents()
    {
        String aLine ;
        Vector columnNames = new Vector();
        Vector data = new Vector();

        try
        {
            FilePermission p = new FilePermission("DL0215103A.csv", "read" );
            FileInputStream File = new FileInputStream("DL0215103A.csv");
            BufferedReader br = new BufferedReader(new InputStreamReader(File));

            // extract column names

            StringTokenizer st1 = new StringTokenizer(br.readLine(), ",");

            while( st1.hasMoreTokens() )
            {
                columnNames.addElement(st1.nextToken());
            }

            // extract data

            while ((aLine = br.readLine()) != null)
            {
                StringTokenizer st2 = new StringTokenizer(aLine, ",");
                Vector row = new Vector();

                while(st2.hasMoreTokens())
                {
                    row.addElement(st2.nextToken());
                }
                data.addElement( row );
            }
            br.close();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

        //  Create table using the DefaultTableModel

        model = new DefaultTableModel(data, columnNames);
        JTable1 = new JTable(model);

        jScrollPane1.setViewportView(JTable1);
        add(jScrollPane1, java.awt.BorderLayout.CENTER);


    }

}
4

1 に答える 1

1

おそらく、問題は実際にファイルを見つけることに関連しています。アプレットがアプレットとして起動されると、相対ファイルを見つけてロードするためにさまざまな基準が使用されます。このトピックに関する Java チュートリアルを確認してください: link .

于 2010-03-09T17:35:31.207 に答える