我试图在用户单击更新按钮时在文本文件中写入和替换特定行,但事实证明,它会将更改/更新的行写入换行符。我对此有JTable。谢谢您的帮助!对不起,如果我的代码有点混乱。
int updatedfoodcode = Integer.parseInt(fieldFoodCode.getText());
String updatedfoodname = fieldFoodName.getText();
int updatedfoodprice = Integer.parseInt(fieldFoodPrice.getText());
int updatedfoodquantity = Integer.parseInt(fieldFoodQuantity.getText());
int row = jTable1.getSelectedRow();
foodlist.get(row).foodCode = updatedfoodcode;
foodlist.get(row).foodName = updatedfoodname;
foodlist.get(row).foodPrice = updatedfoodprice;
foodlist.get(row).foodQuantity = updatedfoodquantity;
dtm.setRowCount(0);
for(int i = 0; i < foodlist.size(); i++){
Object[] obj = {foodlist.get(i).foodCode,foodlist.get(i).foodName,foodlist.get(i).foodPrice,foodlist.get(i).foodQuantity};
dtm.addRow(obj);
}
Food reload = new Food(
Integer.parseInt(fieldFoodCode.getText()),fieldFoodName.getText(),Integer.parseInt(fieldFoodPrice.getText()),Integer.parseInt(fieldFoodQuantity.getText())
);
foodlist.set(row,reload);
try {
fileWriter = new FileWriter("C:\\Users\\TEMP\\Documents\\Music\\Music\\Documents\\NetBeansProjects\\inventorytry\\src\\inventorytry\\inventory.txt",true);
String write = "";
for(int i = 0; i < foodlist.size(); i++)
if(i == row)
{
write += foodlist.get(i).foodCode + " " + foodlist.get(i).foodName + " " + foodlist.get(i).foodPrice + " " + foodlist.get(i).foodQuantity + "\n";
}
fileWriter.write(write);
fileWriter.close();
}
catch (Exception e){
System.out.println("" + e);
}
}