我希望将对象以人类可读的形式写入文本文件,但实际保存的文件是普通序列化对象,其中包含不需要的字符。
我该如何重写程序,以便将其保存为人类可读的文本文件?
import java.io.*;
class book implements Serializable
{
String name;
String author;
int nop;
int price;
int discount;
void getDiscount()
{
int finalprice=price-((price/discount));
System.out.println("Final price after discount="+finalprice);
}
public String toString()
{
return name+author+nop+price+discount;
}
}
class fileio
{
public static void main(String args[])
{
MainClass mainObject=new MainClass();
mainObject.writeToFile();
book javabook=new book();
javabook.name="Java unleashed";
javabook.author="someone";
javabook.nop=1032;
javabook.price=450;
javabook.discount=10;
javabook.getDiscount();
}
public void writeToFile()
{
try
{
File file=new File("JavaBook1.txt");
FileWriter fw=new FileWriter(file.getAbsoluteFile());
BufferedWriter bw=new BufferedWriter(fw);
bw.write(book.toString());
bw.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
toString()
方法,以及其他内容。 - Steve P.