C# 更改文本文件的名称

C# 更改文本文件的名称,c#,C#,我有一段代码: using (StreamWriter writer = new StreamWriter("C:\\Users\\HP8200\\Desktop\\fatura.txt")) { string numcont = _transaction.PartyFederalTaxID; double numenc = _transaction.BillToPartyID; double numfatura

我有一段代码:

 using (StreamWriter writer = new StreamWriter("C:\\Users\\HP8200\\Desktop\\fatura.txt"))
    {            
        string numcont = _transaction.PartyFederalTaxID;
        double numenc = _transaction.BillToPartyID;
        double numfatura = _transaction.TransDocNumber;
        DateTime data = _transaction.CreateDate;
        double valor = _transaction.TotalAmount;
        short zona = transaction.BillToPartyAddressID;
        double precoantesdisc = bsoItemTrans.BSOItemTransactionDetail.TransactionDetail.PackUnitPrice;
        double preconet = transaction.TotalTransactionAmount;
        double quantidade = transaction.Details.Count;
        double bonus = _transaction.TotalPaymentDiscountAmount;
        string valorStr = valor.ToString(CultureInfo.InvariantCulture);
        string preconetStr = preconet.ToString(CultureInfo.InvariantCulture);
        string precoantesdiscStr = precoantesdisc.ToString(CultureInfo.InvariantCulture);           

            writer.WriteLine($"{numcont};{numenc};{numfatura};{data:dd/MM/yyyy};{valorStr};{zona};");
            foreach (ItemTransactionDetail detail in transaction.Details)
            {
                var item = MyApp.DSOCache.ItemProvider.GetItem(detail.ItemID, MyApp.SystemSettings.BaseCurrency);                    
                double taxRate = MyApp.DSOCache.TaxesProvider.GetTaxRateFromTaxableGroupID(detail.TaxableGroupID, "PRT","CON");
                string barcode = item.BarCode;
                writer.WriteLine($"{barcode};{taxRate};{precoantesdiscStr};{preconetStr};{quantidade};{bonus}");
            }

        }
        MessageBox.Show("gravou");
    }
我需要将文本文件的名称更改为票据编号(在本例中是变量“numfactura”)。 可能吗

我需要为每张账单创建一个新文件


这可能吗?

请查看
System.IO.File.Move()
方法,
Move()
将文件更改为新名称

System.IO.File.Move("OldFileName", "NewFileName");

查看
System.IO.File.Move()
方法,
Move()
将文件更改为新名称

System.IO.File.Move("OldFileName", "NewFileName");
我不知道你如何列举你的账单,但把你的书写代码放在一个
foreach
循环中


我不知道你是如何列举你的账单的,但是把你的书写代码放在一个
foreach
循环中。

创建一个字符串来存储文件名,并根据你的需要构建文件名。e、 g.
string fileName=numfatura.ToString()+“.txt”显然,您必须在
新建StreamWriter()
之前执行此操作,但如果我在StreamWriter之前执行此操作,它将不会读取变量“numfatura”创建一个字符串来存储文件名,并根据您的需要构建该文件名。e、 g.
string fileName=numfatura.ToString()+“.txt”显然,您必须在
新建StreamWriter()
之前执行此操作,但如果我在StreamWriter之前执行此操作,它将不会读取变量“numfatura”,这会将文件另存为“fileName”,它不应该这样做。它将使用fileName变量中的任何名称保存它。您是否已输入新的StreamWriter(“文件名”)
?如果您要传递一个变量,则新StreamWriter中不应该有引号。
。请注意,我的答案没有引号。我按ctrl+c和ctrl+v的字面意思。这会将文件保存为“文件名”,而不应该。它将使用文件名变量中的任何名称进行保存。您输入了新StreamWriter(“文件名”)吗)?如果要向新StreamWriter传递变量,则新StreamWriter中不应有引号。请注意,我的答案没有引号。我实际上是ctrl+c和ctrl+v。我应该在哪里使用它?只是为了确保我正确地使用它。在您的文件被写入后,这意味着
使用(…){…}
。我应该在哪里使用它?只是为了确保我正确地使用它。在您的文件被写入后,这意味着
使用(…){…}