如何写入二进制文件

如何写入二进制文件,第1张

#include 写二进制文件 写二橡空改进制文件应该使用ofstream类,亏腔文件的打开模式一定要是 binary,如果传入的不是 binary, 文件将以ASCII方式打开。 下面是示例代码,用梁判于写入文件。 std::ofstream fout("a.dat", std::ios::binary)int nNum = 20st

使用fseek()定位到相应的位置,使用fread()、高运fwrite()读写文件即可。下面是一个在1.txt的文件末尾斗念掘追空核加hello world的示例: #include #include int main(){FILE *fp = fopen("1.txt", "a+")if (fp==0) { printf("can't open file\n")return 0

c#二进制文件的写入和读取,参考代码如下:

using System 

using System.IO 

public class FileApp 

    public static void Main() 

    { 

        // 在当前目录创建一个文件myfile.txt,对该文件具有读写权限 

        FileStream fsMyfile = new FileStream("myfile.txt" , FileMode.Create, FileAccess.ReadWrite) 

        // 创建一个数据流写入器,和打开的文件关联 

        StreamWriter swMyfile = new StreamWriter(fsMyfile) 

        // 以文本方式写一个文件 

        swMyfile.WriteLine("Hello, World"让神) 

        swMyfile.WriteLine("abcdefghijklmnopqrstuvwxyz") 

        swMyfile.WriteLine("ABCDEFGHIJKLMNOPQRSTUVWXYZ") 

        swMyfile.WriteLine("0123456789") 

        // 冲刷数据(把数据真正写到文件中去) 

        // 注释该句试试看,程序将报错 

        swMyfile.Flush() 

        // 以文本方式读文件 

        // 创建一个数据流读入器,和打开的文件关联 

        StreamReader srMyfile= new StreamReader(fsMyfile) 

        // 把文件指针重新定位到文件的开始 

        srMyfile.BaseStream.Seek(0, SeekOrigin.Begin) 

        // 打印提示信息 

        Console.WriteLine("****************以文本方式读文件*********************") 

        // 打印文件文本内容 

        string s1 

        while((s1 = srMyfile.ReadLine())!=null) 

        { 

            Console.WriteLine(s1) 

        } 

        Console.WriteLine() 

        // 以文本方式读文件结束 

        // 以二进制方式读文件 

        // 创建一个二进制数据流读入器,和打开的文件关联 

        BinaryReader brMyfile= new BinaryReader (fsMyfile) 

        // 把文件指针重新定位到文件的开始 

 判滑山       brMyfile.BaseStream.Seek(0, SeekOrigin.Begin) 

        // 打印提示信息 

        Console.WriteLine("****************以二进制方式读文件*********************") 

        // 打印文件文本内容 

        Byte b1 

        while(brMyfile.PeekChar()>-1) 

        { 

            b1=brMyfile.ReadByte() 

            // 13为"\n",表示回车;掘中10为"\r",表示换行 

            if(b1 != 13 && b1 != 10) 

            { 

                Console.Write("{0}",b1.ToString()) 

                Console.Write(".") 

            } 

            else 

            { 

                Console.WriteLine() 

            } 

        } 

        Console.WriteLine("\n") 

        // 以二进制方式读文件结束 

        // 关闭以上new的各个对象 

        brMyfile.Close() 

        srMyfile.Close() 

        fsMyfile.Close() 

        // 读取文件属性 

        // 打印提示信息 

        Console.WriteLine("****************读取文件属性*********************") 

        FileInfo fiMyfile=new FileInfo("myfile.txt") 

        Console.WriteLine("文件名 : {0}",fiMyfile.Name) 

        Console.WriteLine("文件名(含路径) : {0}",fiMyfile.FullName) 

        Console.WriteLine("文件大小(bytes) : {0}",fiMyfile.Length) 

        Console.WriteLine("文件创建时间 : {0}",fiMyfile.CreationTime) 

    } 

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12121365.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存