相关疑难解决方法(0)

以合理,安全和有效的方式复制文件

我搜索一个复制文件(二进制或文本)的好方法.我写过几个样本,每个人都在工作.但我想听听经验丰富的程序员的意见.

我错过了很好的例子并搜索了一种适用于C++的方法.

ANSI-C-WAY

#include <iostream>
#include <cstdio>    // fopen, fclose, fread, fwrite, BUFSIZ
#include <ctime>
using namespace std;

int main() {
    clock_t start, end;
    start = clock();

    // BUFSIZE default is 8192 bytes
    // BUFSIZE of 1 means one chareter at time
    // good values should fit to blocksize, like 1024 or 4096
    // higher values reduce number of system calls
    // size_t BUFFER_SIZE = 4096;

    char buf[BUFSIZ];
    size_t size;

    FILE* source = fopen("from.ogv", "rb");
    FILE* dest = fopen("to.ogv", "wb"); …
Run Code Online (Sandbox Code Playgroud)

c++ file-io

292
推荐指数
4
解决办法
18万
查看次数

在Linux中复制文件的最有效方法

我正在一个独立于操作系统的文件管理器,我正在寻找最有效的方法来复制Linux文件.Windows有一个内置函数CopyFileEx(),但是从我注意到的,Linux没有这样的标准函数.所以我想我必须实现自己的.显而易见的方法是fopen/fread/fwrite,但有更好(更快)的方法吗?我还必须能够偶尔停止每一次,以便我可以更新文件进度菜单的"复制到目前为止"计数.

c linux

27
推荐指数
3
解决办法
2万
查看次数

标签 统计

c ×1

c++ ×1

file-io ×1

linux ×1