I've programmed a console app using C#.
When I run the console app I receive the error noted above. My programming logic is as follows:
class Program
{
static void Main(string[] args)
{
string path = @"\\mypath\\mydirectory";
DirectoryInfo di = new DirectoryInfo(path);
FileInfo[] files = di.GetFiles();
string year = DateTime.Now.Year.ToString();
string month = DateTime.Now.Month.ToString("d2");
string day = DateTime.Now.Day.ToString("d2");
string feedVersion;
string manifestFileName = "MyFile_" + year + month + day + ".manifest";
string manifestDest = di + manifestFileName;
string manifestHeader = "FileName|Version|Line_Count|SHA256HASH";
StreamWriter oFile = new StreamWriter(manifestDest);
FileStream uploadFile = File.OpenWrite(manifestFileName);
using (SHA256 mySHA256 = SHA256.Create())
{
oFile.WriteLine(manifestHeader);
foreach (FileInfo finfo in files)
{
if (finfo.Name.Contains("labdata"))
{
feedVersion = "200";
}
else if (finfo.Name.Contains("pharm"))
{
feedVersion = "200";
}
else if (finfo.Name.Contains("claim"))
{
feedVersion = "200";
}
else if (finfo.Name.Contains("enrollment"))
{
feedVersion = "220";
}
else if (finfo.Name.Contains("member"))
{
feedVersion = "202";
}
else if (finfo.Name.Contains("provider"))
{
feedVersion = "220";
}
else if (finfo.Name.Contains("hierarchy"))
{
feedVersion = "200";
}
else if (finfo.Name.Contains("member*attribution"))
{
feedVersion = "200";
}
else
{
feedVersion = "NA";
}
using (uploadFile)
{
try
{
var lineCount = File.ReadAllLines(di.ToString());
var fileName = Path.GetFileName(di.ToString());
byte[] hashValue = mySHA256.ComputeHash(uploadFile);
//Console.Write($"{finfo.Name}: ");
oFile.WriteLine(fileName.ToString() + "|" + feedVersion.ToString() + "|" + lineCount.ToString() + "|" + hashValue);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
oFile.Close();
oFile.Dispose();
}
}
Console.WriteLine("Success");
}
public static void PrintByteArray(byte[] array)
{
for (int i = 0; i < array.Length; i++)
{
Console.Write($"{array[i]:X2}");
if ((i % 4) == 3) Console.Write(" ");
}
Console.WriteLine();
}
}
What modifications are needed to ensure that the file can be created in the directory as specified and that it contains all the needed information in it?