在C#中如何将字符串变量嵌入文件路径?
在C#文件路径中嵌入字符串变量的正确方法
你的原代码存在两处问题:一是string File = @File;写法错误,@符号在这里无法正确初始化变量;二是路径字符串里的@File不会自动替换为变量值。下面是几种可行的实现方式:
方法1:字符串拼接
直接用+运算符将路径片段和变量拼接,注意避开命名冲突(别用File当变量名,避免和System.IO.File类冲突):
string fileName = "你的文件名"; string path = @"C:/Temporary/" + fileName + ".pdf";
方法2:字符串插值(C# 6+)
用$前缀开启字符串插值,变量放在{}中,还可以和@结合保留路径的原样写法,代码更简洁直观:
string fileName = "你的文件名"; string path = $@"C:/Temporary/{fileName}.pdf";
方法3:使用Path.Combine(推荐)
这个方法会自动处理不同平台的路径分隔符,避免手动拼接出现的路径格式问题,是更规范的写法:
using System.IO; // 需要引入这个命名空间 string fileName = "你的文件名"; string directory = @"C:/Temporary"; // 方式A:直接拼接文件名和扩展名 string path = Path.Combine(directory, fileName + ".pdf"); // 方式B:用Path.ChangeExtension统一处理扩展名 string path = Path.ChangeExtension(Path.Combine(directory, fileName), ".pdf");
内容的提问来源于stack exchange,提问作者Pinku
相关产品推荐
相关产品推荐

