无法读取数组长度,因为“<local1>”为空

时间:2021-01-31 15:22:36

标签: java arrays file nullpointerexception

我正在用 Java 制作股票市场模拟器应用程序,deleteHistoryFiles() 方法存在问题。它说数组为空。但是,我不知道这个错误在谈论什么数组。 这是代码(我删除了一些方法以节省空间):

package stock.market.simulator;

import java.util.Random;
import java.text.DecimalFormat;

import java.util.Timer;
import java.util.TimerTask;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class StockMarketSimulator {
    
    // Path to where the files are stored for rate history 
    // USE WHEN RUNNING PROJECT IN NETBEANS
    //public static final String HISTORYFILEPATH = "src/stock/market/simulator/history/";

    // Path to history files to be used when executing program through jar file
    public static final String HISTORYFILEPATH = "history/";
    
    public static void main(String[] args) throws IOException {

        accountProfile accProfile = accountCreation();

        stockProfile[][] stockProfile = createAllStocks();

        deleteHistoryFiles(new File(HISTORYFILEPATH));
        createHistoryFiles(stockProfile);

        mainWindow window = new mainWindow(accProfile, stockProfile);

        recalculationLoop(stockProfile, window);

    }
    // Procedure to create the history files
    public static void createHistoryFiles(stockProfile[][] stocks) throws IOException {

        String fileName;
        FileWriter fileWriter;

        for (stockProfile[] stockArray : stocks) {
            for (stockProfile stock : stockArray) {
                fileName = stock.getProfileName() + ".csv";
                fileWriter = new FileWriter(HISTORYFILEPATH + fileName);
            }
        }

    }

    // Procedure to delete the history files
    public static void deleteHistoryFiles(File directory) {
        for (File file : directory.listFiles()) {
            if (!file.isDirectory()) {
                file.delete();
            }
        }

    }

}

0 个答案:

没有答案