在C#中解析和验证解析#
问题描述:
我是C#编程新手。我想通过命令行运行我的窗体窗体应用程序,其中一个参数是文件名,在我的应用程序中打开。 我该怎么办有关的说法以下验证传递给应用:在C#中解析和验证解析#
- 检查参数字符串是有效的文件路径(不是一个文件夹路径)
- 如果参数字符串是相对路径(如“〜\ xyz.pdf“),那么它将生成并验证绝对路径(如”C:\ Downloads \ xyz.pdf“)。
- 如果参数字符串是有效的文件路径,那么文件应该是特定的扩展名(例如文件路径是有效的,它只是PDF文件)。
答
,如果你希望它是一个现有的文件
File.Exists
,否则只有绝对万无一失的方法是尝试创建/打开它。如果是标准相对路径(xyz.pdf),则可以使用
Path.GetFullPath(Path.Combine(baseDirectory, path))
。如果路径是相对路径或绝对路径,这将工作。Path.GetExtension
答
嗯,你可以尝试这样的:
public static void Test(string path){
// If there is no File at the desired location
if (File.Exists(path) == false){
}
// Get the FullPath
string fullPath = Path.GetFullPath(path);
// Check the Extension for .pdf
if (path.EndsWith(".pdf")){
}
// Or you can do Path.GetExtension(path)
}
你尝试过什么,并在那里究竟是你卡住了? – bassfader
你是编程新手?采取这个建议:谷歌周围,阅读文档和代码示例学习。我敢肯定,如果你谷歌你的3个人点,你会发现他们每个人足够的解决方案。 – MarioDS
一些提示[Path.GetFullPath] [1],[Path.IsPathRooted] [2]。 [1]:http://msdn.microsoft.com/en-us/library/system.io.path.getfullpath.aspx [2]:http://msdn.microsoft.com/en-us /library/system.io.path.ispathrooted –