首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是C“文件*f;”的C#?

什么是C“文件*f;”的C#?
EN

Stack Overflow用户
提问于 2010-07-17 22:04:36
回答 5查看 856关注 0票数 1

我是C#的初学者,我想知道如何用C# C

代码语言:javascript
复制
static void example(const char *filename)
 {
FILE *f;
outbuf_size = 10000;
outbuf = malloc(outbuf_size);

f = fopen(filename, "wb");
     if (!f) {
       fprintf(stderr, "could not open %s\n", filename);
         exit(1); 
  }

fwrite(outbuf, 1, outbuf_size, f);
fclose(f);
}

请帮帮我。

顺便说一句:我正在尝试移植FFMPEG api-使用Tao.FFMpeg表示的here示例(Tao是围绕C#的.Net包装器..旧的和和FFMPEG中完全一样的sintax )所以你能读一读这篇文章并告诉我在我的代码样本中遗漏了什么……

我的问题是-我知道如何移植FFMpeg部件,但我只是不确定如何以适合.Net的方式移植文件IO部件\函数

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-20 21:36:00

因为您提供的库的示例代码可以读取和写入二进制文件,所以我建议使用System.IO.BinaryReader和System.IO.BinaryWriter

代码语言:javascript
复制
    static void example(string filename)
    {
        StreamReader sr;
        BinaryWriter bw;

        try
        {
            sr = new StreamReader(filename);

            bw = new BinaryWriter(File.Open("out.bin", FileMode.Create));

            bw.Write(sr.ReadToEnd());

            bw.Flush();
            bw.Close();

            sr.Close();
        }
        catch(Exception ex)
        {
            // Handle the exception
        }
    }
票数 2
EN

Stack Overflow用户

发布于 2010-07-17 22:07:32

我不会为您编写所有代码,而是直接转到System.IO.File

票数 4
EN

Stack Overflow用户

发布于 2010-07-17 22:16:12

您的代码示例令人困惑。你的意思是把一些有意义的东西放在缓冲区中并写到文件中,或者你的意思是从文件中读取到缓冲区中。

代码语言:javascript
复制
using System.IO;

byte[] bytesFromFile = File.ReadAllBytes(filePath);

byte[] someBytes = new byte[someLength];
// omitted: put some values into someBytes array
File.WriteAllBytes(filePath, someBytes);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3271780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档