我想做一个人事管理,能上传WORD和PDF简历
上传:
字段为[姓名],[性别],[简历名称],[简历]不想使用如下insert 语句,因为有些记录没有简历,有些记录以后再传简历。要能像普通记录一样修改
with  ADOQuery1  do
 begin
  close;
  sql.clear;
  sql.Add('insert into image Values(:id,:image)');
  Parameters.ParamByName('id').Value:= Edit1.Text;
  Parameters.ParamByName('image') .LoadFromFile(Edit2.text,ftBlob);
  ExecSQL;下载:
点按钮,就能把简历文件保存到本机,文件名为[简历名称]。删除:
可以删除某条记录的简历字段,但该记录不删除。关于二进制文件的读取,已经难住我5天了。网上搜过无数办法,都没有成功。

解决方案 »

  1.   

    首先你的需求还是模糊,
    其次编辑的话PDF是支持的,WORD还差不多。引入临时文件啊,提出产生临时文件,用完后删除
      

  2.   

    需求很清晰,只是我没说清楚。
    我用临时文件.SaveToFile('c:\temp.doc');
    OleContainer1.CreateObjectFromFile('c:\temp.doc',false)
    但是只能解决下载DOC文件的问题,所以我想弄一个文件名字段如张三.DOC,然后下载的时候可以保存这个名字到电脑上。上传,我用的insert语句,不好用。只能插入新字段,无法在原来的字段上修改。
      

  3.   

    我需要一份源代码,实现WORD或PDF文件的管理。即在数据库保存二进制文件。
      

  4.   

    PDF找相关的SDK什么的,当年我曾经面试过这方面的职位,在网上找过大量的资料。
    Word的资料大把的,Delphi有相关的控件若干个。
      

  5.   

    1、只是保存WORD或PDF二进制文件到数据库,再读出来,那和WORD/PDF文件本身没有关系,只是BLOB字段的读写
    2、“点下载按钮,就能把简历文件保存到本机,文件名为[简历名称]”,那需要有一个字段把简历名称记下来,保存文件到本地时命名文件
    3、“可以删除某条记录的简历字段,但该记录不删除。”,把BLOB字段清空就是了
    4、“二进制文件的读取,已经难住我5天了”,你要解析WORD/PDF二进制文件?那样的话确实有点复杂,且不说WORD二进制格式是不公开的,单是公开格式的PDF也会搞到头大。如果只是显示一下,直接调外部程序或控件是最省事的
      

  6.   

    我做的图片、word文档提交到数据库的程序都是用的数据流的方式。
      

  7.   

    给你个存储图片到数据库中的代码,对于存储word基本一样procedure TForm1.Button1Click(Sender: TObject);
    var
      ms: TMemoryStream;
      jpg: TJpegImage;
    begin
      ms := TMemoryStream.Create;
      jpg := TJpegImage.Create;
      if dlgOpen1.Execute then
        img1.Picture.LoadFromFile(dlgOpen1.FileName);
      try
        if img1.Picture.Graphic<>nil then
          begin
            //try
              img1.Picture.Graphic.SaveToStream(ms);
             //判断图片大小,如果图片太大则不允许
              if ms.Size >1024*500  then
                 showmessage('图片太大不允许')
              else
              //提交图片
                begin
                qry1.Append;
                TBlobField(qry1.FieldByName('pic')).LoadFromStream(ms);
                qry1.Post;
                end;
          end;
      finally
        jpg.Free;
        ms.Free;
      end;
    end;
      

  8.   

    楼上:我在网上连续搜索了一个星期,找到的全是用代码存具体一种格式的文件,还都说得不明不白,复制COPY代码的多。流文件存储不是那么好用,仅能针对一种格式。要么全图,要么全WORD,要么全PDF。经历了千辛万苦,终于最后我用一个控件+两行简单代码搞定了。
    存储:
    可以直接拖动任何文件(1M以下)到文本框里。
    读取:
    双击文本框就能打开相应文件,只要电脑上有相应的程序(如PDF文件就需安装读PDF的,DOC文件需安装WORD)高手们都太坏了,知道有那么牛B的方法都不公布。死赖着求公司高手才给我提供一个TP4000的流行控件包,网上几乎找不到完整教程,MEMO也演示得太基本简单。下载无数XX档案管理,顶多有个特定格式的照片存储代码(如楼上)。结贴 
      

  9.   

    你们都是坏人,都藏着掖着,COPY再COPY。看来只有问诸如数据库如何连接这类新手问题才会得到答案。