2014-10-06 2 views
0

openfiledialog를 사용하여 calender.txt 파일을 엽니 다.이 파일을 열면 calender를 파일 이름으로 표시하고 .txt는 필터 상자의 c : \OpenFileDialog에서 전체 경로와 파일 이름을 표시하는 방법

없이 표시합니다.

사람은 내가 어떻게 C를 얻을 수 있도록 대화를 코딩하는 나에게 보여 주시겠습니까 : 대화

private void openFileButton_Click(object sender, EventArgs e) 
{ 
    OpenFileDialog ofd = new OpenFileDialog(); 
    ofd.InitialDirectory = (@"C:\"); 
    ofd.Filter = ("*.txt| Text File"); 
    ofd.FileName = "calender.txt"; 
    ofd.CheckFileExists = false; 

    if (ofd.ShowDialog() == DialogResult.OK) 
    { 
     if (CheckValidity(ofd.FileName)) 
     { 
      try 
      { 
       streamWriter sw = new streamWriter(ofd.FileName); 
      } 
      catch (FileLoadException flEx) 
      { 
       MessageBox.Show(flEx.Message); 
      } 
      else 
      { 
      } 
     } 
    } 
} 
+0

당신은'ofd.FileName = Path.Combine (ofd.InitialDirectory, "calendar.txt");'을 시도 했습니까? – TyCobb

+0

나는 당신이 제어반에있는 폴더 선택권의 밑에 그것을 놓아야 한 ㄴ다고 믿는다 – Steve

+0

감사하십시오 TyCobb는 그것을 – Tom

답변

1

설정할 수 있습니다 대화 상자에서 원하는 파일 이름을 선택하십시오.

OpenFileDialog ofd = new OpenFileDialog(); 
ofd.InitialDirectory = (@"C:\"); 
ofd.FileName = Path.Combine(ofd.InitialDirectory, "calendar.txt"); 

는이 번 사용자가 다른 파일을 선택 머물되지 않습니다 명심하지만 실제로하지 않습니다 : 당신이 시작의 전체 경로를 표시 할 경우, 다음을 수행 할 수 있습니다 그들이 Open에 도착하면 FileName에 대한 전체 경로가 있기 때문에 문제가됩니다.

+0

도와 주셔서 감사합니다. – Tom

0

에 달력을 \ 할 수 있습니다 예를 들어

string path_selected = ofd.FileName; 

와 사용자가 선택한 길을 갈 수 "C : //users/user/desktop/myfile.txt"

내가 파일 이름을 반환하는 모든 방법을 잘 모릅니다하지만 당신이 경로를 편집 할 문자열 방법을 사용하여 파일 이름을 얻을 수 있습니다

+0

당신의 제안을위한 감사합니다, 나의 질문 아마 isnt 아주 명확한 미안. 그 대답은 TyCobb ofd.FileName = Path.Combine (ofd.InitialDirectory, "calendar.txt")에 의해 주어졌습니다; – Tom

관련 문제