如果文件路径正确,如何显示?图像或非图像



我不知道如何让cmd显示用户是否为图像输入了正确的文件路径。我知道我必须安慰你。???但我不知道该怎么写。

设置:

  1. 用户输入其文件路径
  2. CMD获取这些信息,并告诉它们是否是图像文件(0xFFD8文件(
  3. CMD然后创建一个.CSV文件,其中包含文件路径、文件类型和MD5哈希

我一直在获取cmd来告诉用户它是否是jpg文件。

知道我的代码哪里出错了吗?

internal class Program
{

static void Main(string[] args)
{
Console.WriteLine("Please enter your file path location:");
string mainFile = MainFileInput();

Console.WriteLine("Let's determine what type of file this is:");
string typeFile = ImageType();
}
public static string MainFileInput()
{
string mainFile = Console.ReadLine();
while (File.Exists(mainFile) == false)
{
Console.WriteLine("Main file does not exist. Please enter another file: ");
mainFile = Console.ReadLine();
}
Console.WriteLine("File exists.");
return mainFile;
}
public static ImageType HeaderType(string typefile)
{
string checkType;
byte[] headerBytes;
using (FileStream fileStream = new FileStream(typefile, FileMode.Open))
{
const int mostBytesNeeded = 11;//For JPEG
if (fileStream.Length < mostBytesNeeded)
return ImageType.Unknown;
headerBytes = new byte[mostBytesNeeded];
fileStream.Read(headerBytes, 0, mostBytesNeeded);
}
if (headerBytes[0] == 0xFF &&//FF D8)
{
return ImageType.JPEG;
}
return ImageType.Unknown;
}
public enum ImageType
{
Unknown,
JPEG,
}
}

您需要使用您的文件名从Main调用方法HeaderType(...)(mainFile-在您从调用方法MainFileInput(...)收到它之后(。

HeaderType(...)的返回值的类型将为ImageType
使用.ToString()方法转换为字符串后即可打印。

因此,您的完整Main将类似于:

static void Main(string[] args)
{
Console.WriteLine("Please enter your file path location:");
string mainFile = MainFileInput();
Console.WriteLine("Let's determine what type of file this is:");
ImageType theType = HeaderType(mainFile);
Console.WriteLine("Image type: " + theType.ToString());
}

相关内容

  • 没有找到相关文章

最新更新