線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1300
推到 Plurk!
推到 Facebook!

檔名拮取

尚未結案
nick6562
一般會員


發表:26
回覆:19
積分:9
註冊:2004-07-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-31 14:32:52 IP:211.74.xxx.xxx 未訂閱
請教各位高手: 日前請教過一些先進關於檔名拮取的方式,後來主管是希望,也能拮取到網路上電腦所分想出來的檔案的檔案名稱,而不用mapping網路磁碟機,我嘗試過以ExecuteFilePath(\\ComputerName\FolderName\FileName),但無法編譯,請教我的問題出在哪???謝謝!
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-31 14:53:47 IP:210.65.xxx.xxx 未訂閱
Hi nick6562,    ExtractFilePath('\\ComputerName\FolderName\FileName'); 發表人 -
------
Fishman
nick6562
一般會員


發表:26
回覆:19
積分:9
註冊:2004-07-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-31 15:06:31 IP:211.74.xxx.xxx 未訂閱
引言: Hi nick6562, ExtractFilePath(\\ComputerName\FolderName\FileName) ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ---------------------------------- < face="Verdana, Arial, Helvetica"> 不好意思~剛剛按得太快,我是用ExtractFilePath沒錯~ Sorry~ 出現這個錯誤訊息: [Error] TaskForm.pas(37): Undeclared identifier: 'ExtractFilePath'
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-08-31 15:20:16 IP:210.65.xxx.xxx 未訂閱
Hi nick6562,    uses SysUtils ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
nick6562
一般會員


發表:26
回覆:19
積分:9
註冊:2004-07-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-08-31 15:37:26 IP:211.74.xxx.xxx 未訂閱
引言: Hi nick6562, uses SysUtils ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ---------------------------------- < face="Verdana, Arial, Helvetica"> 對不起~我還是將我的程式碼Post上來~~~~因為我的頭快炸掉ㄌ~~~~~~~ unit TaskForm; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, QRCtrls, QuickRpt, ExtCtrls, StdCtrls, SysUtils; type TTaskForm1 = class(TForm) QuickRep1: TQuickRep; QRBand1: TQRBand; QRLabel1: TQRLabel; lblTask: TQRLabel; QRDBText: TQRDBText; btnDisplay: TButton; btnPrevent: TButton; btnNext: TButton; procedure btnDisplayClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var TaskForm1: TTaskForm1; implementation {$R *.dfm} procedure TTaskForm1.btnDisplayClick(Sender: TObject); var OpenDialog : TOpenDialog; begin OpenDialog:=ExtractFilePath(\\Output\北區FTP); QRDBText := TQRDBText; if OpenDialog.ExtractFileName=true then begin QRDBText.Caption; end else begin end; end; end. 我主管最主要的用意,就是希望利用QReport裡面的QRDBText.Caption屬性,將網路上某一台電腦上所分享的檔案或資料夾的檔名擷取下來,而這個檔案,只要產生了,因此有了檔名,就要將此檔名顯示在QDBText.Caption屬性中........
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-08-31 16:25:11 IP:210.65.xxx.xxx 未訂閱
Hi nick6562,    請參考 http://delphi.ktop.com.tw/topic.php?topic_id=55427 為何執意使用 QRDBText?這種狀況下,我還是建議使用 QRLabel
procedure TForm1.Button1Click(Sender: TObject);
var
  OpenDialog : TOpenDialog;
  FileName : String;
begin
  OpenDialog := TOpenDialog.Create(Self);
  IF OpenDialog.Execute then
    FileName := OpenDialog.FileName;
    QRLabel1.Caption := ExtractFilePath(FileName);        ......
    QuickRep1.Preview;
    OpenDialog.Free;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
nick6562
一般會員


發表:26
回覆:19
積分:9
註冊:2004-07-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-09-01 09:14:21 IP:211.74.xxx.xxx 未訂閱
引言: Hi nick6562, 請參考 http://delphi.ktop.com.tw/topic.php?topic_id=55427 為何執意使用 QRDBText?這種狀況下,我還是建議使用 QRLabel
procedure TForm1.Button1Click(Sender: TObject);
var
  OpenDialog : TOpenDialog;
  FileName : String;
begin
  OpenDialog := TOpenDialog.Create(Self);
  IF OpenDialog.Execute then
    FileName := OpenDialog.FileName;
    QRLabel1.Caption := ExtractFilePath(FileName);        ......
    QuickRep1.Preview;
    OpenDialog.Free;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ---------------------------------- < face="Verdana, Arial, Helvetica"> 感謝你!!可以了~不過主管又出個難題給我........就是如果檔名是中文,英文,及數字參雜在一起,是否可以只真對中文,或數字部份做擷取動作......?
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-09-01 11:39:49 IP:210.65.xxx.xxx 未訂閱
Hi nick6562,    關於中文擷取,請參考    http://delphi.ktop.com.tw/topic.php?topic_id=53519
procedure TForm1.Button1Click(Sender: TObject);
  function GetString(InStr : String ;Method : Integer) : String;
    var
      OriStr : Array[0..1000] OF Char;
      p : Integer;
      S : String;
    begin
      S := '';
      P := 0;
      StrPCopy(OriStr,InStr);
      while P <= Length(InStr) - 1 do
        begin
          Case Method of
            1 : begin // 中文
                  IF ORD(OriStr[p]) > 127 then
                    begin
                      S := S   Copy(OriStr,P   1,2);
                    end;
                  P := P   2;
                end;
            2 : begin //英文
                  IF ((UpperCase(OriStr[p]) >= 'A') AND (UpperCase(OriStr[p]) <= 'Z')) then
                    begin
                      S := S   Copy(OriStr,P   1,1);
                    end;
                  P := P   1;
                end;
            3 : begin // 數字
                  IF ((OriStr[p] >= '0') AND (OriStr[p] <= '9')) then
                    begin
                      S := S   Copy(OriStr,P   1,1);
                    end;
                  P := P   1;
                end;
            else
              begin
                S := S   OriStr[p];
                P := P   1;
              end;
          end;
        end;
      showmessage(s);
    end;
begin
  GetString(Edit1.Text,1);
  GetString(Edit1.Text,2);
  GetString(Edit1.Text,3);
  GetString(Edit1.Text,4);
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
系統時間:2024-05-18 12:37:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!