【发布时间】:2012-01-06 19:49:51
【问题描述】:
public static void save()
{
BufferedWriter out = null;
try
{
out = new BufferedWriter(new OutputStreamWriter(Gdx.files.external(file).write(false)));
out.write(Double.toString(FinanceSystem.currentPlayerCash));
out.write("\n");
out.write(Integer.toString(DateSystem.day));
out.write("\n");
out.write(Integer.toString(DateSystem.month));
out.write("\n");
out.write(Integer.toString(DateSystem.year));
out.write("\n");
for(int i = 0; i <= InventorySystem.drugsOwned.size(); i++)
out.write(Integer.toString(InventorySystem.drugsOwned.get(i))+"\n");
for(int i = 0; i <= AttributeSystem.attributeNames.length; i++)
out.write(Integer.toString(AttributeSystem.attributeValues.get(i)) + "\n");
}
catch (Throwable e) {}
finally
{
try
{
if (out != null)
out.close();
}
catch (IOException e) {}
}
我的问题是,在库存 system.drugsowned 的 for 循环之后,没有其他内容被写入文件。所以在这个例子中 AttributeSystem.attributeValues 没有被写入。我也尝试过在这个循环之后写其他东西,包括非循环的东西,他们也没有写。华文?
【问题讨论】:
-
也许它抛出了一个异常,你完全忽略了它,就好像它没有发生一样?不要那样做...
-
您应该在异常块中添加一些日志记录。可能在编写属性之前/期间抛出了一些异常。
-
空捕获块!一切谜团之母!
标签: java for-loop bufferedwriter