2015-06-09 85 views
0

我是pl/sql中的新成員,可能聽起來很愚蠢,但我有一個問題。通過使用utl_file,我正在閱讀一個文本文件。但是我的文本文件在行之間包含空格,我需要繼續讀取所有內容,即使在該空格之後。下面我顯示了我使用的代碼和我的文本文件的模板。我的文本文件UTL_file:即使遇到空行也會繼續讀取

alarma2 
alarma2 
alarma2 


alarma3 
alarma3 
alarma3 
alarma3 

任何想法,我怎樣才能使顯示所有文件內容,而不僅僅是到空白的

DECLARE 
     V1 VARCHAR2(200); 
     F1 UTL_FILE.FILE_TYPE; 
    BEGIN 

     F1 := UTL_FILE.FOPEN('directory','text.txt','R'); 

     Loop 
     BEGIN 
    UTL_FILE.GET_LINE(F1,V1); 
    dbms_output.put_line(V1); 
    EXCEPTION WHEN No_Data_Found THEN EXIT; END; 
     end loop; 
     dbms_output.put_line(emptylines); 

     UTL_FILE.FCLOSE(F1); 
    END; 
    /

模板?

回答

0

也許你可以試試這個:

... 
    Loop 
    BEGIN 
     UTL_FILE.GET_LINE(F1,V1); 
     IF (TRIM(V1) is not null) AND ((TRIM(V1) <> CHR(10)) OR (TRIM(V1) <> CHR(13))) THEN 
        dbms_output.put_line(V1); 
     END IF; 
... 

我不知道你的意思dbms_output.put_line(emptylines);什麼,所以我也沒在意一個回合吧:)。 也許你可以檢查你正在處理的行是否爲空並且沒有回車(CHR(13))或換行符(CHR(10)),並且可以確定哪些行包含數據,哪些行不包含數據。 希望這個幫助!!!。

+0

謝謝,夥計!這是工作 。 – Silviu

相關問題