Напишите текстовый файл на языке Си#
Кажется, что это должно быть невероятно легко, учитывая всю разнообразную информацию, имеющуюся там. Но я продолжаю бросать исключение, когда пишу свои файлы. Ошибка, которую я получаю, такова:
Необработанное исключение типа ' System.UnauthorizedAccessException ' произошло в mscorlib.dll
Дополнительная информация: доступ к пути 'C:\ PayCheckCalculator.txt-это отрицается
Что я уже пробовал:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; namespace TripCostCalculator { public partial class Form1 : Form { private const string dir = @"C:\\ "; private const string path = dir + "PayCheckCalculator.txt"; decimal tax = .06m; public Form1() { InitializeComponent(); } private void btnCalculate_Click(object sender, EventArgs e) { string name = txtName.Text; decimal dph; decimal grossIncome; decimal netIncome; if (!decimal.TryParse(txtDph.Text, out dph)) { MessageBox.Show("Please enter a valid dollar amount"); return; } decimal hoursWorked; if (!decimal.TryParse(txtHoursWorked.Text, out hoursWorked)) { MessageBox.Show("Please enter a valid dollar amount"); return; } grossIncome = dph * hoursWorked; txtGrossIncome.Text = grossIncome.ToString("c"); netIncome = grossIncome - (grossIncome * tax); txtNetIncome.Text = netIncome.ToString("c"); } private void btnDelete_Click(object sender, EventArgs e) { } private void btnExit_Click(object sender, EventArgs e) { this.Close(); } private void btnAdd_Click(object sender, EventArgs e) { lstSalary.Items.Add(txtName.Text); lstSalary.Items.Add(txtDph.Text); lstSalary.Items.Add(txtHoursWorked.Text); lstSalary.Items.Add(txtGrossIncome.Text); lstSalary.Items.Add(txtNetIncome.Text); } private void btnSave_Click_1(object sender, EventArgs e) { StreamWriter textOut = new StreamWriter( new FileStream(path, FileMode.Create, FileAccess.Write)); textOut.Write(txtName.Text + "|"); textOut.Write(txtDph.Text + "|"); textOut.Write(txtHoursWorked.Text + "|"); textOut.Write(txtGrossIncome + "|"); textOut.Write(txtNetIncome.Text + "|"); textOut.Close(); } } }