2013-11-20 90 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

歡迎來到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我已更新我的示例以檢查包含當前日期的文件夾是否存在,如果不存在,請創建它。顯然,你可以給你的文件夾以你喜歡的名字。 – 2013-11-20 10:49:56

+0

多數民衆贊成多我感興趣@Veleous –