全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2706
推到 Plurk!
推到 Facebook!

讀檔問題

答題得分者是:taishyang
cthd013116
一般會員


發表:5
回覆:5
積分:2
註冊:2007-01-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-12-26 23:13:14 IP:218.211.xxx.xxx 訂閱
目前想做讀檔的動作,但不想要還要使用者來選擇
檔案
[code cpp]
AnsiString Y = CCalendar1->Year;
AnsiString M = CCalendar1->Month;
AnsiString D = CCalendar1->Day;
AnsiString SF = Form6->SaveDialog1->FileName;
OpenDialog1->FileName=Y M D ".txt";
AnsiString OF = OpenDialog1->FileName;
if(OpenDialog1->Execute())
{
if(SF == OF)
{
Form6->Show();
Form6->Memo1->Lines->LoadFromFile(OpenDialog1->FileName);

}
}
[/code]

這段程式碼主要是想要說當你點月曆的日期,假設你已經之前有存過相同
的檔名時,他就會自動的把之前存檔的內容SHOW在Memo上

complier沒問題,但就是跑不出結果來

請版上的大大幫我看一下,謝謝
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-12-27 03:30:31 IP:75.41.xxx.xxx 未訂閱
AnsiString Y = CCalendar1->Year;
AnsiString M = CCalendar1->Month;
AnsiString D = CCalendar1->Day;
if FileExists(Y M D ".txt") )
{
Form6->Show();
Form6->Memo1->Lines->LoadFromFile(Y M D ".txt");
}
編輯記錄
Stallion 重新編輯於 2007-12-27 03:31:33, 註解 無‧
Stallion 重新編輯於 2007-12-27 03:33:27, 註解 無‧
cthd013116
一般會員


發表:5
回覆:5
積分:2
註冊:2007-01-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-12-27 18:13:06 IP:218.211.xxx.xxx 訂閱
我已經把之前的原始碼還有版主的程式碼進行合併測試

[code cpp]
AnsiString Y = CCalendar1->Year;
AnsiString M = CCalendar1->Month;
AnsiString D = CCalendar1->Day;

OpenDialog1->FileName=Y M D ".txt";
if(OpenDialog1->Execute())
{
if( FileExists(Y M D ".txt") )
{
Form6->Show();
Form6->Memo1->Lines->LoadFromFile(Y M D ".txt");
}
}

[/code]

但是似乎還是有同樣跑不出東西的問題


===================引 用 Stallion 文 章===================
AnsiString Y = CCalendar1->Year;
AnsiString M = CCalendar1->Month;
AnsiString D = CCalendar1->Day;
if FileExists(Y M D ".txt") )
{
Form6->Show();
Form6->Memo1->Lines->LoadFromFile(Y M D ".txt");
}

taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-12-27 18:33:47 IP:122.124.xxx.xxx 訂閱
檔名正確否?
cthd013116
一般會員


發表:5
回覆:5
積分:2
註冊:2007-01-31

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-12-27 18:58:17 IP:218.211.xxx.xxx 訂閱
檔名是抓月曆元件上的年 日 月 來進行存檔,抓檔時也是用年日 月來抓,檔名是沒問題的
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-12-27 19:06:29 IP:122.124.xxx.xxx 訂閱
斷點下在
Form6->Memo1->Lines->LoadFromFile(Y M D ".txt"
);
trace看看,如果不會到這行
再看看路徑對不對
cthd013116
一般會員


發表:5
回覆:5
積分:2
註冊:2007-01-31

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-12-27 22:21:09 IP:218.211.xxx.xxx 訂閱
trace 的結果真的沒跑到這一行,路徑我是用OpenDialog 和SaveDialog中都有的

InitialDir來做設定



===================引 用 taishyang 文 章===================
斷點下在
Form6->Memo1->Lines->LoadFromFile(Y M D ".txt"
);
trace看看,如果不會到這行
再看看路徑對不對
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2007-12-28 09:55:17 IP:122.124.xxx.xxx 訂閱
1.既然用CCalendar來取得檔名,就沒有使用TOpenDialog的必要
2.依照你的程式,只需要在檔名前面加上絕對路徑就可以了
可用ExtractFilePath(Application->ExeName)取得目前專案執行檔的路徑
cthd013116
一般會員


發表:5
回覆:5
積分:2
註冊:2007-01-31

發送簡訊給我
#9 引用回覆 回覆 發表時間:2007-12-28 18:13:07 IP:218.211.xxx.xxx 訂閱
請問副站長,ExtractFilePath(Application->ExeName)這
一行要怎麼使用?


===================引 用 taishyang 文 章===================
1.既然用CCalendar來取得檔名,就沒有使用TOpenDialog的必要
2.依照你的程式,只需要在檔名前面加上絕對路徑就可以了
可用ExtractFilePath(Application->ExeName)取得目前專案執行檔的路徑
編輯記錄
cthd013116 重新編輯於 2007-12-28 18:13:46, 註解 無‧
cthd013116 重新編輯於 2007-12-28 22:45:54, 註解 無‧
系統時間:2024-05-08 2:31:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!