PowerBuilder函數小集(文件操作)

PowerBuilder函數小集(文件操作)
 
 
  
FileClose()
功能關閉先前用FileOpen()函數打開的文件。
語法FileClose  (  fileno  )
參數fileno:integer,指定要關閉文件的文件句柄,該句柄使用FileOpen()函數打開文件時得到返回值Integer。函數執行成功時返回1,發生錯誤時返回-1。如果fileno參數的值爲NULL,那麼FileClose()函數返回NULL。 
--------------------------------------------------------------------------------

FileDelete()
功能刪除指定的文件。
語法FileDelete  (  filename  )
參數filename:string類型,指定要刪除文件的文件名,其中可以包含路徑返回值Boolean。函數執行成功時返回TRUE,發生錯誤時返回FALSE。如果filename參數的值爲NULL,那麼FileDelete()函數返回NULL。 
--------------------------------------------------------------------------------

FileExists()
功能檢查指定的文件是否存在。
語法FileExists  (  filename  )
參數filename:string類型,指定要檢查存在性的文件的文件名,其中可以包含路徑返回值Boolean。如果指定文件存在時返回TRUE,不存在時返回FALSE。如果filename參數的值爲NULL,那麼FileExists()函數返回NULL。用法如果filename參數指定的文件被另一個應用加鎖鎖住,那麼FileExists()函數也將返回FALSE。 
--------------------------------------------------------------------------------

FileLength()
功能得到指定文件的長度(以字節爲單位)。
語法FileLength  (  filename  )
參數filename:string類型,指定要得到其長度的文件的文件名,其中可以包含路徑返回值Long。函數執行成功時返回指定文件的長度(以字節爲單位)。如果指定的文件不存在,函數返回-1。如果filename參數的值爲NULL,那麼FileLength()函數返回NULL。 
--------------------------------------------------------------------------------

FileOpen()
功能以指定的讀寫方式打開指定的文件,同時返回該文件的句柄。
語法FileOpen(filename{,filemode{,fileaccess{,filelock{,writemode,{creator,filetype}}}}})
參數filename:string類型,指定要打開文件的名稱,其中可以包含路徑  filemode:FileMode枚舉類型,可選項,指定文件打開方式。有效取值爲:?LineMode!  -  缺省值,行模式;?StreamMode!  -  流模式fileaccess:FileAccess枚舉類型,可選項,指定文件訪問方式。有效取值爲:?Read!  -  缺省值,只讀方式,這樣打開的文件只能進行讀操作;?Write!  -  只寫方式,這樣打開的文件只能進行寫操作?filelock:FileLock枚舉類型,可選項,指定文件加鎖方式。有效取值爲:n  LockReadWrite!  -  缺省值,只有打開該文件的用戶能夠訪問該文件,其它用  戶對該文件的訪問均被拒絕;n  LockRead!  -  只有打開該文件的用戶能夠讀該文件,但其它任何用戶均可寫該文件;n  LockWrite!  -  只有打開該文件的用戶能夠寫該文件,但其它任何用戶均可讀該文件;n  Shared!  -  所有用戶均可讀寫該文件writemode:WriteMode枚舉類型,可選項,當fileaccess參數指定爲Write!時,該參數指定在指定文件已經存在時數據的添加方式。有效取值爲:?Append!  -  缺省值,將數據添加到原文件尾部;?Replace!  -  覆蓋原有數據creator:可選項,用於Macintosh機,使用四個字符的字符串指定文件的創建者。指定該參數後,必須同時指定filetype參數filetype:可選項,用於Macintosh機,使用四個字符的字符串指定文件類型返回值Integer。函數執行成功時返回打開文件的句柄,隨後的文件操作函數利用該句柄完成對文件的操作。發生錯誤時函數返回-1。如果任何參數的值爲NULL,那麼FileOpen()函數返回NULL。用法當文件以行模式打開時,每執行一次FileRead()函數讀取一行數據;每執行一次FileWrite()函數,該函數自動在寫出的字符串末尾增加一個回車(CR)換行(LF)符(這是應用程序在Windows  系統中運行時的情況,在UNIX下只加一個換行字符)。當文件以流模式打開時,執行一次FileRead()函數讀取32,765個字節的數據,如果餘下數據沒有這麼多,那麼FileRead()函數就讀取所有餘下的數據;執行一次FileWrite()函數時,最多可寫入32,765個字節的數據,並且不添加回車換行字符。當文件以寫方式使用FileOpen()函數打開時,如果指定的文件不存在,那麼FileOpen()函數創建該文件。 
--------------------------------------------------------------------------------

FileRead()
功能從指定文件中讀取數據。
語法FileRead  (  fileno,  variable  )
參數fileno:integer類型,指定文件句柄(由FileOpen()函數得到)variable:string或blob類型的變量,用於保存讀取的數據返回值Integer。函數執行成功時返回讀取的字符數或字節數;如果在讀取任何字符前讀到了文件結束符(EOF),則FileRead()函數返回-100;當指定文件以行模式打開時,如果在讀取任何字符之前遇到了回車(CR)或換行(LF)字符,則FileRead()函數返回0。如果發生其它錯誤,FileRead()函數返回-1。如果任何參數的值爲NULL,那麼FileRead()函數返回NULL。用法當指定文件以行模式(Line  Mode)打開時,FileRead()函數一次讀取一行數據,並把它保存到參數variable中,然後跳過行結束符(回車換行符,操作系統不同,使用的字符也不同),把文件指針移動到下一行的起始位置。當文件以流模式(Stream  Mode)打開時,FileRead()函數或一直讀取到文件結尾,或讀取32,765字節的數據,決定於兩者哪個數據長度更短些。 
--------------------------------------------------------------------------------

FileSeek()
功能將文件指針移動到指定位置。讀寫文件時相應函數會自動移動文件指針。
語法FileSeek  (  fileno,  position,  origin  )
參數fileno:integer類型,指定文件句柄(由FileOpen()函數得到)position:long類型,指定相對於origin參數指定位置的新位置偏移量,以字節爲單位origin:SeekType枚舉類型,指定從哪裏開始移動文件指針,即指針移動的基準。有效取值爲:?FromBeginning!  -  缺省值,從文件開頭移動指針;?FromCurrent!  -  從當前位置移動文件指針;?FromEnd!  -  從文件結尾處移動文件指針返回值Long。函數執行成功時返回指針移動後的指針位置。如果任何參數的值爲NULL,那麼FileSeek()函數返回NULL。 
--------------------------------------------------------------------------------

FileWrite()
功能向指定文件中寫數據。
語法FileWrite  (fileno  ,  variable  )
參數fileno:integer類型,指定文件句柄(由FileOpen()函數得到)variable:string或blob類型,其值將寫入fileno參數指定的文件返回值Integer。函數執行成功時返回寫入文件的字符或字節數,發生錯誤時返回-1。如果任何參數的值爲NULL,那麼FileWrite()函數返回NULL。用法FileWrite()函數從當前文件指針開始寫入指定數據,寫入之後,將文件指針調整到剛剛寫入數據的下一個字節位置。當文件以writemode參數設置爲Replace!方式打開時,文件指針最初位於文件的開頭位置;當文件以writemode參數設置爲Append!方式打開時,文件指針最初位於文件的結尾位置。當文件以行模式打開時,執行FileWrite()函數時,該函數自動在每次寫入數據的後面加上回車換行符,並把文件指針移動到回車換行符後面。當文件以流模式打開時,FileWrite()函數一次最多寫入32,765個字節。如果variable參數中數據的長度超過了32,765個字節,那麼FileWrite()函數只向文件中寫入前32,765個字符並返回32,765。 
--------------------------------------------------------------------------------

GetFileOpenName()
功能顯示打開文件對話框,讓用戶選擇要打開的文件。
語法GetFileOpenName(title,pathname,filename{,extension{,filter}})
參數title:string類型,指定對話框的標題pathname:string類型變量,用於保存該對話框返回的文件路徑及文件名filename:string類型變量,用於保存該對話框返回的文件名extension:string類型,可選項,使用1到3個字符指定缺省的擴展文件名  filter:string類型,可選項,其值爲文件名掩碼,指定顯示在該對話框的列表框中供用戶選擇的文件名滿足的條件(比如*.*,*.TXT,*.EXE等)返回值Integer。函數執行成功時返回1;當用戶單擊了對話框上的“Cancel”按鈕時函數返回0;發生錯誤時返回-1。如果任何參數的值爲NULL,那麼GetFileOpenName()函數返回NULL。
用法filter參數的格式爲:description,*.  Ext缺省值爲:"All  Files  (*.*),*.*"其中,description說明擴展名的意義,比如“所有文件”、“文本文件”等。你可以根據需要指定在打開文件對話框中顯示的文件名類型。當需要指定多種文件類型時,各類型之間使用逗號分隔,例如:"PIF  文件,  *.PIF,  批處理文件,  *.BAT"需要注意的是,該函數只是得到一個文件名,而並沒有打開文件,需要打開文件時,依然需要使用FileOpen()函數。 
--------------------------------------------------------------------------------

GetFileSaveName()
功能顯示保存文件對話框,讓用戶選擇要保存到的文件。
語法GetFileSaveName(title,pathname,filename{,extension{,filter}})
參數title:string類型,指定對話框的標題pathname:string類型變量,用於保存該對話框返回的文件路徑及文件名filename:string類型變量,用於保存該對話框返回的文件名extension:string類型,可選項,使用1到3個字符指定缺省的擴展文件名filter:string類型,可選項,其值爲文件名掩碼,指定顯示在該對話框的列表框中供用戶選擇的文件名滿足的條件(比如*.*,*.TXT,*.EXE等)返回值Integer。函數執行成功時返回1;當用戶單擊了對話框上的“Cancel”按鈕時函數返回0;發生錯誤時返回-1。如果任何參數的值爲NULL,那麼GetFileSaveName()函數返回NULL。
用法filter參數的格式爲:description,*.  Ext缺省值爲:"All  Files  (*.*),*.*"其中,description說明擴展名的意義,比如“所有文件”、“文本文件”等。你可以根據需要指定在打開文件對話框中顯示的文件名類型。當需要指定多種文件類型時,各類型之間使用逗號分隔,例如:"PIF  文件,  *.PIF,  批處理文件,  *.BAT"需要注意的是,該函數只是得到一個文件名,而並沒有打開文件,需要打開文件時,依然需要使用FileOpen()函數。  
 

發佈了1 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章