transient:该数据不需要序列化,数据透明(输出显示null),private transient String name;
创新互联公司专业为企业提供大峪网站建设、大峪做网站、大峪网站设计、大峪网站制作等企业网站建设、网页设计与制作、大峪企业网站模板建站服务,十年大峪做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。//写出后读取,读取的数徐与写出保持一致
public class n {
public static void main(String[]args) throws IOException, ClassNotFoundException
{
写入字节数组
//写出 序列化
ByteArrayOutputStream os=new ByteArrayOutputStream();
ObjectOutputStream oos=new ObjectOutputStream(new BufferedOutputStream(os));
ha ff=new ha("hh",222);
oos.writeUTF("哈哈");
oos.writeChar('q');
oos.writeBoolean(false);
oos.writeObject(ff);
oos.flush();
byte[] datas=os.toByteArray();
oos.close();
//读取 反序列化
ObjectInputStream ois =new ObjectInputStream(new BufferedInputStream(new ByteArrayInputStream(datas)));
String s=ois.readUTF();
char ch=ois.readChar();
boolean flag=ois.readBoolean();
Object str=ois.readObject(); //Object需要强制转换
//还原(判断是哪个类,然后强制转换):
if (str instanceof String ) //是String类就直接转换成字符串
{
String s1=(String)str;
System.out.println(s1);
}
if(str instanceof Data)
{
Date d=(Date)str;
System.out.println(d);
}
if(str instanceof ha)
{
ha fr=(ha)str;
System.out.println(fr.getName()+fr.getSalary());
}
ois.close();
}
//javabean,用于封装数据
class ha implements java.io.Serializable {
private transient String name; //该数据不需要序列化,数据透明
private double salary;
public ha()
{
}
public ha(String name,double salary)
{
this.name=name;
this.salary=salary;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
}
写入文件:
ObjectOutputStream oos=new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream("D:/d/s")));
ha ff=new ha("hh",222);
oos.writeUTF("what");
oos.writeObject(ff);
oos.flush();
oos.close();
//使用时,反序列化对象
ObjectInputStream ois=new ObjectInputStream(new BufferedInputStream(new FileInputStream("D:/d/s")));
String s=ois.readUTF();
Object it=ois.readObject();
if(it instanceof ha)
{
ha q=(ha)it;
System.out.println(q.getName()+q.getSalary());
}
ois.close();
//javabean 用于封装数据
class ha implements java.io.Serializable {
private transient String name; //该数据不需要序列化,数据透明
private double salary;
public ha()
{
}
public ha(String name,double salary)
{
this.name=name;
this.salary=salary;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
}
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款