 
			
				27/03/2008, 11:13
			
			
			     |  
      |    |    |    Fecha de Ingreso: marzo-2008  
						Mensajes: 7
					  Antigüedad: 17 años, 7 meses Puntos: 0     |        |  
  |      Re: Retorno De Carro, Salto De Linea En Plsql        Esta ha sido mi solución final   
DECLARE   
v_file CLOB := 'IDSHP|CAMPO1|CAMPO2|CAMPO3|CAMPO4|CAMPO5|CAMPO6|C  AMPO7|'||CHR(10)||CHR(13)||'1|REG1|REG2|REG3|REG4|  REG5| REG6|REG7|'||CHR(10)||CHR(13);   
v_texto_linea VARCHAR2(4000); 
v_long   INTEGER; 
v_contini PLS_INTEGER; 
v_initline PLS_INTEGER; 
v_salto VARCHAR2(10); 
v_chunk_size INTEGER := 0; 
v_cont	PLS_INTEGER; 
v_campo_idshp	VARCHAR2(32);   
BEGIN   
v_cont := 1; 
v_contini := 0; 
v_initline := 1; 
v_salto :=CHR(10)||CHR(13); --salto de carro   
LOOP   
v_contini := DBMS_LOB.INSTR(v_file,v_salto,v_initline,1);   
v_chunk_size := v_contini - v_initline;   
DBMS_LOB.READ(v_file, 
		 			   v_chunk_size, 
					   v_initline, 
					   v_texto_linea);   
v_long := DBMS_LOB.GETLENGTH(v_texto_linea);   
v_initline := v_contini + 2;   
IF v_cont = 1 THEN   
v_campo_idshp 	   	 := SUBSTR(v_texto_linea, 1, INSTR(v_texto_linea, '|') - 1); 
v_texto_linea 		 := SUBSTR(v_texto_linea, INSTR(v_texto_linea, '|') + 1, LENGTH(v_texto_linea));   
END IF;   
dbms_output.put_line(v_campo_idshp); 
dbms_output.put_line(v_texto_linea);   
END LOOP; 
END;   
Bueno puedo ir quedandome con los nombres de campo o registros que necesite leyendo desde cada separador de campo "|", si quiero ir a que me desglose los registros tendre que meter un contador en el loop y sumando 1 (cont := cont +1).   
Y me ha funcionado bien , de nuevo gracias a los que me han ayudado           |