ファイルに書き込もうとすると NullPointerException が発生します。
RobocodeFileWriter fileWriter=new RobocodeFileWriter("test.txt");
for (int i = 0; i < state.countstates; i++)
for (int j = 0; j < state.countactions; j++)
fileWriter.write((int) table[i][j]);
}
例外:
java.lang.NullPointerException
at net.sf.robocode.host.security.ThreadManager.createRobotFileStream(ThreadManager.java:136)
at robocode.RobocodeFileOutputStream.<init>(RobocodeFileOutputStream.java:88)
at robocode.RobocodeFileOutputStream.<init>(RobocodeFileOutputStream.java:69)
at robocode.RobocodeFileWriter.<init>(RobocodeFileWriter.java:69)
at QTable.saveData(QTable.java:79)
at MyFirstRobot.saveToFile(MyFirstRobot.java:471)
at MyFirstRobot.onDeath(MyFirstRobot.java:414)
at robocode.DeathEvent.dispatch(DeathEvent.java:63)
at robocode.Event$HiddenEventHelper.dispatch(Event.java:259)
at net.sf.robocode.security.HiddenAccess.dispatch(HiddenAccess.java:191)
at net.sf.robocode.host.events.EventManager.dispatch(EventManager.java:422)
at net.sf.robocode.host.events.EventManager.processEvents(EventManager.java:376)
at net.sf.robocode.host.proxies.BasicRobotProxy.executeImpl(BasicRobotProxy.java:412)
at net.sf.robocode.host.proxies.BasicRobotProxy.execute(BasicRobotProxy.java:121)
at robocode.AdvancedRobot.execute(AdvancedRobot.java:549)
at MyFirstRobot.run(MyFirstRobot.java:68)
at net.sf.robocode.host.proxies.HostingRobotProxy.callUserCode(HostingRobotProxy.java:274)
at net.sf.robocode.host.proxies.HostingRobotProxy.run(HostingRobotProxy.java:221)
at java.lang.Thread.run(Thread.java:695)
この例外は、-DNOSECURITY=true を渡してセキュリティ マネージャを無効にしても発生します。私のロボコード バージョンは 1.8.3.0 で、Mac で開発を行っています。どんな助けでも大歓迎です。