注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

_

_

 
 
 

日志

 
 

Java读写二进制文件  

2014-12-01 09:54:21|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Java读写二进制文件

分类: Java技术专栏 2009-08-11 15:07 24217人阅读 评论(2) 收藏 举报

javaexceptionstringconstructorfiledos

[java] view plaincopyprint?

  1. import java.io.DataInputStream;?
  2. import java.io.DataOutputStream;?
  3. import java.io.File;?
  4. import java.io.FileInputStream;?
  5. import java.io.FileOutputStream;?
  6. import java.io.IOException;?
  7. /* @comany 阿斯达克(深圳)信息技术有限公司
  8. * @author steven.wu
  9. * @since 2009.8.11
  10. * @description read and write stream for binary file。
  11. */
  12. public class BinaryReadWrite {?
  13. private DataInputStream dis=null;?
  14. private DataOutputStream dos=null;?
  15. private String s_FilePath="d:/bin.dat";?
  16. private byte[] m_datapadding = { 0x00 }; //填充空白,以补足字节位数.
  17. public BinaryReadWrite() {?
  18. // TODO Auto-generated constructor stub
  19. ??????? init();?
  20. ??? }?
  21. private void init(){?
  22. try{?
  23. if(!new File(s_FilePath).exists()){?
  24. new File(s_FilePath).createNewFile();?
  25. ??????????? }?
  26. ??????????? dis=new DataInputStream(new FileInputStream(new File(s_FilePath)));?
  27. ??????????? dos=new DataOutputStream(new FileOutputStream(new File(s_FilePath)));?
  28. ??????? }catch(Exception e){?
  29. ??????????? e.printStackTrace();?
  30. ??????? }?
  31. ??? }?
  32. public void writeBinaryStream(){?
  33. try{?
  34. if(dos!=null){?
  35. for(int i=0;i<2;i++){?
  36. //write boolean value.
  37. ??????????????????? dos.writeBoolean(true);?
  38. //write a char value.
  39. char c='a';?
  40. ??????????????????? dos.writeChar((int)c);?
  41. ??????????????????? Double d=12.567d;?
  42. ??????????????????? dos.writeDouble(d);?
  43. ??????????????????? Float f=56.782f;?
  44. ??????????????????? dos.writeFloat(f);?
  45. int k=105;?
  46. ??????????????????? dos.writeInt(k);?
  47. long l=98765l;?
  48. ??????????????????? dos.writeLong(l);?
  49. short st=12;?
  50. ??????????????????? dos.writeShort(st);?
  51. ??????????????????? String cs="Java读写二进制文件";?
  52. ??????????????????? String cs1="二进制文件";?
  53. if(i==0){?
  54. ??????????????????????? dos.writeUTF(cs);?
  55. ??????????????????? }else{?
  56. ??????????????????????? dos.writeUTF(cs1);?
  57. ??????????????????? }?
  58. ??????????????????? dos.write(m_datapadding);?
  59. ??????????????? }?
  60. ??????????????? dos.flush();?
  61. ??????????????? dos.close();?
  62. ??????????? }?
  63. ??????? }catch(Exception e){?
  64. ??????????? e.printStackTrace();?
  65. ??????? }?
  66. ??? }?
  67. public void readBinaryStream(){?
  68. try{?
  69. if(dis!=null){?
  70. while(dis.available()>0){?
  71. ??????????????????? System.out.println(dis.available());?
  72. ??????????????????? System.out.println(dis.readBoolean());?
  73. char c=(char)dis.readChar();?
  74. ??????????????????? System.out.println(c);?
  75. ??????????????????? System.out.println(dis.readDouble());?
  76. ??????????????????? System.out.println(dis.readFloat());?
  77. ??????????????????? System.out.println(dis.readInt());?
  78. ??????????????????? System.out.println(dis.readLong());?
  79. ??????????????????? System.out.println(dis.readShort());?
  80. ??????????????????? System.out.println(dis.readUTF());?
  81. ??????????????????? System.out.println(dis.read(m_datapadding));?
  82. ??????????????? }?
  83. ??????????? }?
  84. ??????? }catch(Exception e){?
  85. ??????????? e.printStackTrace();?
  86. ??????? }?
  87. ??? }?
  88. public static void main(String[] args) throws IOException {?
  89. ??????? BinaryReadWrite bin=new BinaryReadWrite();?
  90. ??????? bin.writeBinaryStream();?
  91. ??????? bin.readBinaryStream();?
  92. ??? }?
  93. }?
  评论这张
 
阅读(233)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017