2013-11-20 3 views
-4

응용 프로그램 데이터 디렉토리에 파일을 만들고 해당 파일에 바코드 목록의 데이터를 저장하려고합니다. 아무도이 코드를 도와 줄 수 있습니까?경로를 가져 와서 동적으로 파일을 만듭니다.

try 
{ 
    string timestamp = DateTime.Now.ToString("MM-dd-yyyy.HH-mm-ss"); 
    File.Create("E:\\myfile.txt" + timestamp); 

    // Add some text to file 

    FileStream fstm = new FileStream("E:\\myfile.txt", FileMode.OpenOrCreate, FileAccess.Write); 
    StreamWriter writer = new StreamWriter(fstm); 
    writer.Write(InputData); 
    writer.Close(); 
} 
catch (Exception ex) { 

    MessageBox.Show("prblm : " + ex.Message, 
       "Barcode List", 
       MessageBoxButtons.OK, 
       MessageBoxIcon.Exclamation, 
       MessageBoxDefaultButton.Button1); 
    return; 
} 
+4

Welcome to Stackoverflow! 불행히도 귀하의 질문은 아직 "좋은 질문"이 아니므로 사람들은 당신을 도울 수 없습니다. 정확히 어떤 문제가 있습니까? 오류 메시지가 나타 납니까? 무슨 일이 일어나고, 어떻게되어야하며 두 가지가 어떻게 다른가요? 질문 아래의 "수정"링크를 사용하여 개선 할 수 있습니다. – Heinzi

+0

prblm 경로의 일부가 누락되었습니다, 나는 응용 프로그램 데이터 디렉토리의 경로를 얻고 싶습니다 그 이름에 timstamp와 거기에 폴더를 만들고 싶습니다 그리고 그 파일 (myfile.txt) 그 폴더에 저장하고 싶습니다 –

+0

표시된 오류는 경로의 일부입니다.하지만 지금은 위의 설명에서 언급 한 논리를 사용하고 싶습니다. –

답변

2

당신은 Environment.SpecialFolder 열거를 통해 appdata 디렉토리에 액세스 할 수 있습니다. 관심있는 두 가지가 있는데, CommonApplicationData (비 사용자 관련 데이터) 및 LocalApplicationData (사용자 특정 데이터)입니다.

var lines = File.ReadLines(BarCodeList.Text).ToList(); 
if (!lines.Any()) 
{ 
    return; 
} 
var dir = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + @"\" + 
      DateTime.UtcNow.ToString("yyyyMMdd"); 
Directory.CreateDirectory(dir); 
File.WriteAllLines(dir + @"\myFile.txt", lines); 
+0

응용 프로그램 데이터에 폴더를 추가하고 해당 폴더 파일을 저장하려고합니다. –

+0

@ user3012548 현재 날짜가있는 폴더가 존재하는지 확인하기 위해 예제를 업데이트했으며 그렇지 않은 경우 만들도록 예제를 업데이트했습니다. 당신은 분명히 당신이 좋아하는 이름을 당신의 폴더에 줄 수 있습니다. –

+0

그게 내가 고마워하는 것을 많이 찾는거야 @Veleous –

관련 문제