重新打开后继续写入文件的末尾

时间:2012-12-08 02:32:00

标签: c# file indexing filestream binarywriter

[在C#中]如果我保持文件打开,我可以写多个输入并保存它但是如果我关闭它,重新打开它并再次开始写入,它从开始和覆盖一切开始。我尝试使用FileMode.Append打开它并执行File.Seek(0, SeekOrigin.End);

这是文件打开代码:

else if (File.Exists((dossier_defaut + nom_lexique)) && File.Exists((dossier_defaut + nom_index))) //si les deux fichiers existent
{
                //ouverture des fichiers
    fs_lxq = File.Open((dossier_defaut + nom_lexique + extLexique), FileMode.Append, FileAccess.ReadWrite);  // Création du fichier
    fs_idx = File.Open((dossier_defaut + nom_index + extIndex), FileMode.Open, FileAccess.ReadWrite);  // Création du fichier
}
else //aucun fichier existe
{
                    //création de deux nouveaux fichiers
    fs_lxq = File.Open((dossier_defaut + nom_lexique + extLexique), FileMode.Create, FileAccess.ReadWrite);  // Création du fichier
    fs_idx = File.Open((dossier_defaut + nom_index + extIndex), FileMode.Create, FileAccess.ReadWrite);  // Création du fichier


}

我如何向自己保证最终会写出来?

3 个答案:

答案 0 :(得分:2)

您可以使用AppendText对象的File方法。见下文:

        using (StreamWriter sw = File.AppendText(path)) 
        {
            sw.WriteLine("This");
            sw.WriteLine("is Extra");
            sw.WriteLine("Text");
        } 

答案 1 :(得分:1)

如果您使用的是已在此处接听的二进制文件。 How append data to a binary file?

答案 2 :(得分:0)

好吧,在我的条件中只是一个愚蠢的错误,检查文件是否存在于程序的操作中我忘记添加文件扩展名,因此它没有找到它并且每次都创建新文件