visual basic open file 一問

2006-12-18 6:38 am
我想問如果我由user得知一個variable(string)(easy/medium/hard)
而呢個variable係組成file path的一部份
點解我唔可以直接打

open variable + ".txt" for input as #1

佢話run-time error, path not found
咁如果係我呢個case, 個variable一定係easy/medium/hard
係唔係要用 if 先做到開file呢?
定係有冇另外的方法可以o係file name入面放variable都讀到冇問題??

回答 (2)

2006-12-18 7:32 am
✔ 最佳答案
FILE_NAME = App.Path & "/" & variable & ".txt"
某個檔案的路徑 應該這樣
C:\Program Files\Microsoft Visual Studio\VB98\easy.txt
App.Path 只會得到
C:\Program Files\Microsoft Visual Studio\VB98
所以必須加上 \ 再加上 variable 再加上 .txt
這樣才能組成完整的路徑
你也可以這樣寫
FILE_NAME = "C:\Program Files\Microsoft Visual Studio\VB98\" & variable & ".txt"
可是有一點要注意
你的寫法 open variable + ".txt" for input as #1
因為你是輸入 所以檔案必須存在 若檔案不存在就會產生
run-time error, path not found
如果檔案不存在 必須先用 OUTPUT 或是 APPEND 先建立檔案
才能使用 INPUT 開啟
以下是一個建立檔案 並輸入資料的例子
這個檔案會建立在應用程式的目錄裏

Private Sub Command1_Click()
variable = Text1.Text
FILE_NAME = App.Path & "/" & variable & ".txt"
Open FILE_NAME For Output As #1
Write #1, "123"
Close #1
End Sub

2006-12-18 22:20:57 補充:
可以啊 除了一些符號不行之外假設A B 都是 variableA="123"b="DIK"可以寫這樣Open "C:\Program Files\" & A & B & ".txt" For Input As #1就等於開啟 C:\Program Files\123DIK.txt
2006-12-18 6:48 am
佢都係call番windows去做開啟檔案,所以佢話你個路徑找不到,一係你打錯路徑/所在路徑唔存在
即:你要開啟C:\abc\def\123.txt既你只係用左c:\abc\def或abc\def\123.txt既,或者c:\入便都無abc既資料夾係度,佢就會話path not found。
如果係文字接上文字,即"abc"加上"def"變為"abcdef"既,用&會比+好。因為&係接上,但+係數學加上。所以如果係123+"abc"有可能會引發錯誤


收錄日期: 2021-04-13 13:48:35
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20061217000051KK05375

檢視 Wayback Machine 備份