Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何创建文件的文件?_C#_.net_File - Fatal编程技术网

C# 如何创建文件的文件?

C# 如何创建文件的文件?,c#,.net,file,C#,.net,File,现在, 类图 { 列出节点; 作废保存() { foreach(节点中的节点) { node.Save(); } } } 现在,当我调用someGraph.Save()时然后创建节点。计算文件数 我希望将这些文件显示为一个扩展名为somename.graph的文件,并能够将其作为节点重新读取 我该怎么做?有没有办法将文件捆绑到一个不同的文件中?使用类似的归档格式 如果没有外部库支持,您可以使用.Net的序列化机制在单个文件中存储词典(每个文件的文件名和数据)。开始。或Graph.Save应将其

现在,

类图
{
列出节点;
作废保存()
{
foreach(节点中的节点)
{
node.Save();
}
}
}
现在,当我调用
someGraph.Save()时然后创建
节点。计算文件数

我希望将这些文件显示为一个扩展名为
somename.graph
的文件,并能够将其作为
节点重新读取


我该怎么做?有没有办法将文件捆绑到一个不同的文件中?

使用类似的归档格式


如果没有外部库支持,您可以使用.Net的序列化机制在单个文件中存储
词典
(每个文件的文件名和数据)。开始。

或Graph.Save应将其使用的文件流传递给每个节点。Save调用,因此node.Save使用与其封闭图形相同的文件流。

您不能使用System.IO.Compression命名空间中的类吗?具体来说,GZipStream?这不会构成第三方库,因为它内置在.Net中,从2.0及以后就可以使用。

Nice。但我不允许使用外部库+1这就是我所想的,但还有其他方法吗?它的“外部”是什么?它内置在.Net框架中。@Chris,那可能是我的错。我提供的链接指向第三方zip库。我不知道.Net内置了zip文件支持。我无法控制
Data.Save()。它将在磁盘上创建
somthing.foo
。我想将那些
.foo
合并到一个文件中。
class Node
{
    FooType Data; // I can save Data to file with extension .foo
    void Save()
    {
       // save Data to .foo file
    }
}
class Graph
{
    List<Node> Nodes; 
    void Save()
    {
        foreach(Node node in Nodes)
        {
            node.Save();
        }
    }
}