二进制文件是binary类型,一般二进制对象,象执行文件,图象文件等,注意,word,excel,ppt这些"带格式"的文档都应该以二进制对象存储的 。一般文本是Ascii类型,还有就是UNICODE编码
的文本是nicode类型。

解决方案 »

  1.   

    我现在测试的是 word 文件 . 请指出上面代码的错误之处... 谢谢 !
      

  2.   

    错误如下 
    ava.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]The DBMS returned an unspecified error.
      

  3.   

    下面是我的一段代码,请收下!
    //////处理附件//////
    String[] fileName=null;
    InputStream[] inputStream=null;
    Object o=themessage[number].getContent();//当Message对象含有附件时,其内容会以Multipart的形式存在
    if(o instanceof String)
    {
      //不含附件
    }
    else if(o instanceof Multipart)
    {
      //可能含有附件
      //以Multipart的getBodyPart方法取得内容部分,并以getDisposition方法取得邮件的配置
      Multipart mp =(Multipart)o;
      fileName=new String[mp.getCount()];
      inputStream=new InputStream[mp.getCount()];
      for(int i=0,n=mp.getCount();i<n;i++)
      {
        Part part=mp.getBodyPart(i);
        if(i==0)
        {Content=part.getContent().toString();}
        String disposition =part.getDisposition();
        //判断Multipart中是否含有附件的方法.则是依据getDisposition所返回的内容
        if((disposition !=null)&&(disposition.equals(Part.ATTACHMENT)||disposition.equals(Part.INLINE)))
        {
           fileName[i]=part.getFileName();
           System.out.println(fileName[i]);
           fileName[i]=fileName[i].valueOf(i)+fileName[i].substring(fileName[i].indexOf("."),fileName[i].length());
           System.out.println(fileName[i]);
           inputStream[i]=part.getInputStream();
           System.out.println(inputStream[i].toString());
           String pathName="D:\\Online\\defaultroot\\mail\\附件\\";
           File file=new File(pathName + fileName[i]);
           FileOutputStream outfile=new FileOutputStream(file);
           BufferedInputStream br=new BufferedInputStream(inputStream[i]);
           BufferedOutputStream bw=new BufferedOutputStream(outfile);
      
           int b;
           while((b=br.read())!=-1)
           {
        bw.write(b);
           }
           bw.flush();
           outfile.close();
        }
      }
    }