比如我现在已经得到一个DOC文件的的二进制字符流:
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAIQAAAAAA
AAAAEAAAIwAAAAEAAAD+////AAAAACAAAAD/////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
///////////////////////////////////spcEAOSAJBAAA8FK/AAAAAAAAEAAAAAAABAAA
MgQAAA4AYmpiav3P/c8AAAAAAAAAAAAAAAAAAAAAAAAECBYANg4AAJ+lAACfpQAAGQAAAAAA
.........
如何还原为一份doc文档?

解决方案 »

  1.   

    命名个.doc 文件写入不就行了? (呵呵,LZ的名字让我觉得亲切)
      

  2.   

    FileOutputStream out = new FileOutputStream("c:\\abc.doc");
    out.write(buf);
    其中buf是你的二进制字符流
      

  3.   

    FileOutputStream out = new FileOutputStream("c:\\abc.doc");
    out.write(buf);
    如果这个buf是字节流串就可以了.问题他现在是字符流串.
    如果就用上面这两条语句,就吧0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAIQAAAAAA
    AAAAEAAAIwAAAAEAAAD+////AAAAACAAAAD/////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////spcEAOSAJBAAA8FK/AAAAAAAAEAAAAAAABAAA
    MgQAAA4AYmpiav3P/c8AAAAAAAAAAAAAAAAAAAAAAAAECBYANg4AAJ+lAACfpQAAGQAAAAAA
    ........
    直接写到DOC文件去了,而不是原来得有表格,有中文等等的东西.
      

  4.   

    忘记说了,这个.doc是经过MS ADOStream进行bin.base64的编码得出0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAIQAAAAAA
    AAAAEAAAIwAAAAEAAAD+////AAAAACAAAAD/////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////
    ///////////////////////////////////spcEAOSAJBAAA8FK/AAAAAAAAEAAAAAAABAAA
    MgQAAA4AYmpiav3P/c8AAAAAAAAAAAAAAAAAAAAAAAAECBYANg4AAJ+lAACfpQAAGQAAAAAA
    ........问题就是如何将其还原.
      

  5.   

    直接使用二进制流写入到文件,推荐使用java.io.FileOutputStream.write(byte[] b, int off, int len)