ArrayListをテキストファイルに保存しようとしています。しかし、それがどのように保存されるかの形式は間違っています。マイコード:ArrayListオブジェクトごとに複数の値を持つArrayListからのテキストファイルへの書き込み
ArrayList<Vehicle> vehs = new ArrayList<Vehicle>();
vehs.add(new Vehicle("QJT123", "Starlet 99", 35.0, 190000));
vehs.add(new PremiumVehicle("TUX132", "BWM 05 ", 90.0, 12000, 100, 10000, 5000));
これら2に使用コンストラクタ:
public PremiumVehicle(String vehicleID, String description, double dailyRate, int odometer, int allowance, int serLength, int lastOdo) //subclass
public Vehicle(String vehicleID, String description, double dailyRate, int odometer) //Superclass
これらの両方は、車両のArrayListに格納されます。 VehicleList.txtで
private static void saveFile(ArrayList<Vehicle> vehs){
File fileName = new File("VehicleList.txt");
try {
FileWriter fw = new FileWriter(fileName);
Writer output = new BufferedWriter(fw);
for (int i = 0; i < vehs.size(); i++){
output.write(vehs.get(i).toString() + "\n");
}
output.close();
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "I cannot create that file");
}
}
マイ出力:
vehicle ID = QJT123 Description = Starlet 99 Status = A Daily Rate = 35.0 Odometer reading = 190000vehicle ID = TUX132 Description = BWM 05 Status = A Daily Rate = 90.0 Odometer reading = 12000 Mileage allowance = 100 service length = 10000 Last Service = 5000
がどのように私は例えば、それは、このような新しいArrayListオブジェクトに書き込む際に、それぞれの新しい行が追加されていることを確認します:テキストファイルに保存するためのコード
vehicle ID = QJT123 Description = Starlet 99 Status = A Daily Rate = 35.0 Odometer reading = 190000
vehicle ID = TUX132 Description = BWM 05 Status = A Daily Rate = 90.0 Odometer reading = 12000 Mileage allowance = 100 service length = 10000 Last Service = 5000
私はvehs.get(i).toString() + "\n"
を試しましたが、うまくいかないようです。
あなたの2つのオブジェクトは同じ行に書き込まれていますか? –
@ΦXocę笑ПEPeúpaツはい、私のテキストファイルでは、すべて1行で書かれています。車両ID –
が意味をなさない前に、新しい行が追加されると仮定します。いくつかのコードでテストされ、それは完璧にうまく動作します – XtremeBaumer