读取一个文件中的内容,用a模式打开,运行时报错,如果用W模式打开,直接覆盖原文件,只能用r模式打开!
我想问的是,即有读操作又有写操作,而且原文件中有内容时,用什么模式打开?
晕了实在没分了!!

解决方案 »

  1.   


    --用A模式打开
    declare  
      v_filehandle utl_file.file_type; --定义一个文件句柄
    begin
      v_filehandle := utl_file.fopen('UTL_FILE_DIR', 'xxx.log', 'A'); ----打开文件,读数据
      utl_file.put_line(v_filehandle,'写入内容');
      utl_file.fclose(v_filehandle);
    end;
      

  2.   

    看来你没搞清楚这 3 种模式W:是写文件,文件不存在则创建文件,如果文件存在则覆盖之前文件的内容
    A:是追加,若文件不存在则创建文件,文件存在,则在文件结束后面追加内容以上两种是往文件中写入数据R:读文件,文件不存在报错,文件存在则将文件内容读出来你要根据不同的需求,使用不同的模式