c#中的自定义用户定义文件名格式

Custom user defined file name format in c#

要求是用户可以从预定义的标签中选择文件名格式。

例子 发票编号日期供应商名称

如果用户选择 InvoiceNo-Date-Vendorname 那么文件名应该像这样生成:001-20170512-ABCElectronics

如果用户选择 InvoiceNo-Date 则文件名应生成如下:001-20170512

如果用户选择 VendorName-InvoiceNo-Date,则生成的文件名应如下所示:ABCElectronics-001-20170512

format.Replace("InvoiceNo",generateNo()); .Replace 会先检查字符串是否存在然后执行第二个参数吗?第二个参数可以是一个长 运行 方法。

我应该先检查文件格式中是否存在标签然后替换还是只使用.Replace方法而不检查?

谢谢

简单的方法:

input = input.Replace("InvoiceNo",generateInvo());
input = input.Replace("Date",generateDate());
input = input.Replace("Vendorname",generateVendor());

这将更改您想要的代码的这些字符串的第一次出现。 如果愿意,您也可以像 x.Replace(y0,y1).Replace(z0,z1); 这样在一行中执行此操作。