这可能是一个简单的问题,我在VS 2012中编写了一个WinForms C#应用程序。我想知道是否有办法在文本框中添加.csv等扩展名。假设用户在C:\ Users \ Desktop \ filename中写入,但遗漏了路径的.csv部分。有没有办法在单击执行按钮后添加.csv?
非常感谢任何帮助。
答案 0 :(得分:9)
您可以使用Path.ChangeExtension
。
// Nota bene: Path.ChangeExtension does not change textBox1.Text directly (or any
// argument given), you MUST use the result if you care about it.
string newPath = Path.ChangeExtension(textBox1.Text, "csv");
句点是可选的,文件名组件不需要包含扩展名。
作为未来的参考,如果你能想到某些东西你需要做一个文件或目录的路径......它存在于System.IO.Path
中。很少有人不支持该课程中的共同任务。
答案 1 :(得分:1)
如果您不想更改字符串中的有效扩展名,可以这样做:
// first test for an extension
if(!Path.HasExtension(textBox1.Text.Trim()))
{
// then add on '.csv' if one does not exist
string path = Path.ChangeExtension(textBox1.Text.Trim(), ".csv");
// ... use path ...
}