文件操作涉及一個非常重要的概念——文件路徑。文件路徑是指用來標識系統中文件存放位置的字符串。如:D:\\test.txt,表示在D盤根目錄下存入test.txt文件。
文件路徑分為絕對路徑和相對路徑。完整描述文件位置的路徑就是絕對路徑,相對於目標的位置就是相對路徑。
絕對路徑:是從盤符開始的路徑,形如
C:\windows\system32\cmd.exe
相對路徑:是從當前路徑開始的路徑,假如當前路徑為C:\windows
要描述上述路徑,只需輸入
system32\cmd.exe
實際上,嚴格的相對路徑寫法應為
.\system32\cmd.exe
其中,.表示當前路徑,在通道情況下可以省略,只有在特殊的情況下不能省略。
假如當前路徑為c:\program files
要調用上述命令,則需要輸入
..\windows\system32\cmd.exe
其中,..為父目錄。
當前路徑如果為c:\program files\common files
則需要輸入
..\..\windows\system32\cmd.exe
在C#中,斜杠“\”是轉義字符,表示路徑是采用“\\”代替“\”,避免把這個字符解釋為轉義字符。如
“c:\\microfoft\\readme.txt”,也可以用“@”代替,在路徑前加“@”符號,“\”就不會再被解釋為轉義符。如:@"c:\microfoft\readme.txt”。
代碼:
***注:利用打開文件對話框打開文件並獲取絕對路徑***
private void analysis_Click(object sender, EventArgs e)
{
//讀取初始數據協方差矩陣
//string data = @"E:\cov_data.xlsx";
OpenFileDialog file = new OpenFileDialog();
file.Filter = "文本文件(*.xlsx)|*.xlsx|所有文件(*.*)|*.*";
file.Title = "選擇影像協方差數據";
if (file.ShowDialog() == DialogResult.OK)
{
string data = file.FileName;
zhuchengfen_analysis.Zhuchengfen_analysis st = new zhuchengfen_analysis.Zhuchengfen_analysis();
st.zhuchengfen_analysis(data);
}
}
轉載:http://blog.sina.com.cn/s/blog_701286210100yr49.html