Выгрузка по Ftp в определенной кодировке

nothx
Дата: 27.02.2007 08:02:11
Эта процедура создает файд на ftp сервере в кодировке UTF-8, как сделать чтобы создаваемый файл был в кодировке
PROCEDURE put_remote_ascii_data (p_conn  IN OUT NOCOPY  UTL_TCP.connection,
                                 p_file  IN             VARCHAR2,
                                 p_data  IN             CLOB) IS
-- --------------------------------------------------------------------------
  l_conn      UTL_TCP.connection;
  l_result    PLS_INTEGER;
  l_buffer    VARCHAR2(32767);
  l_amount    BINARY_INTEGER := 32767;
  l_pos       INTEGER := 1;
  l_clob_len  INTEGER;
BEGIN
  l_conn := get_passive(p_conn);
  send_command(p_conn, 'STOR ' || p_file, TRUE);
  
  l_clob_len := DBMS_LOB.getlength(p_data);

  WHILE l_pos < l_clob_len LOOP
    DBMS_LOB.READ (p_data, l_amount, l_pos, l_buffer);
    IF g_convert_crlf THEN
      l_buffer := REPLACE(l_buffer, CHR(13), NULL);
    END IF;
    l_result := UTL_TCP.write_text(l_conn, l_buffer, LENGTH(l_buffer));
    UTL_TCP.flush(l_conn);
    l_pos := l_pos + l_amount;
  END LOOP;
  UTL_TCP.close_connection(l_conn);
END;
nothx
Дата: 27.02.2007 08:02:53
в кодировке windows - 1251
nothx
Дата: 27.02.2007 09:45:44
В этой процедуре переменная l_buffer в UTF-8 кодировке, как ее в 1251 переобразовать, прежде чем в файл сохранять?
nothx
Дата: 27.02.2007 09:48:52
Так пробовал, не получается
l_buffer:=utl_raw.convert(utl_raw.CAST_TO_RAW (l_buffer), 'RUSSIAN_CIS.CL8MSWIN1251', 'RUSSIAN_CIS.RU8PC866',);
    l_result := UTL_TCP.write_text(l_conn, convert(l_buffer, 'UTF8', 'CL8MSWIN1251'), LENGTH(l_buffer));