テーブルxlsのデータをスタティックブロックに書き込むにはどうすればよいですか?私はこれのための活動の文脈が必要ですが、私はそれを得る方法を理解していません。スタティックブロック内のテーブルからデータを書き込むにはどうすればよいですか?
私は、静的なブロックでこのコードを使用しています:
Workbook wb = WorkbookFactory.create(/*there must be a context*/.getAssets().open("table.xls"));
テーブルxlsのデータをスタティックブロックに書き込むにはどうすればよいですか?私はこれのための活動の文脈が必要ですが、私はそれを得る方法を理解していません。スタティックブロック内のテーブルからデータを書き込むにはどうすればよいですか?
私は、静的なブロックでこのコードを使用しています:
Workbook wb = WorkbookFactory.create(/*there must be a context*/.getAssets().open("table.xls"));
は、どのように私は、静的なブロックのテーブルXLSからデータを書き込むことができますか?
あなたはありません。
まず、アセットは読み取り専用であるため、アセットには書き込まれません。
第2に、そのコードを実行するために使用されるスレッドを制御できないため、静的ブロックを使用することはできません。
そして、第3に、Context
はありません。場合によっては、はとなる場合があります。Context
です。
ありがとうございます。最初にアクティビティを開始したときにのみテーブルから配列を初期化する方法はありますか? – Tenday
@Tenday:バックグラウンドスレッドでディスクI/Oを実行してください。あなたが(慎重に) 'AsyncTask'を使うのか、RxJavaか他のスレッドオプションを使うのかはあなた次第です。アクティビティを開始するときは、バックグラウンドI/O作業を開始し、準備ができたら結果を使用します。 – CommonsWare
なぜですか?静的ブロックは、クラスが最初にロードされたときにのみ実行され、その時点の制御はほとんどありません。 – EJP