Mất khoảng 2 phút để thực hiện File.Copy(src, dest);
đối với Tệp 1,6 GB từ Thư mục A đến Thư mục B trên cùng một ổ đĩa. Có cách nào nhanh hơn để làm điều này trong C# /. NET trong mã (w/o phần cứng) - Một cái gì đó với dòng, luồng vv?Có cách nào nhanh hơn để sao chép tệp không phải là File.Copy
Chuỗi video có nhanh hơn không? Làm thế nào về một lớp mà tập hợp các tập tin bằng cách sử dụng một threadpool, và đọc một loạt các byte/viết một loạt các byte [mà âm thanh như một cách tuyệt vời để hỏng tập tin, nhưng tính toàn vẹn không phải là ưu tiên 1 ở đây, tốc độ của nó :-) ]
Tôi đã tìm kiếm nhưng mọi người đều sử dụng File.Copy, nhưng nó chậm (chậm như Windows Copy) - Tôi không muốn sử dụng công cụ của bên thứ 3.
Dưới đây là một số câu trả lời cho một số câu hỏi:
Sao chép thời gian so sánh:
> C# : 2.15m
> Windows Explorer: 2.53m
> TeraCopy: 2.26m
> FastCopy: 2.24m
Ok, đó là không trung bình và tôi biết rằng họ có thể thay đổi một chút về chạy tiếp theo, nhưng Tôi thực sự nghĩ rằng sẽ có một cách nhanh hơn để sao chép tệp từ khi tôi giả định rằng Windows đang thực hiện kiểm tra bảo mật và tính toàn vẹn bổ sung :-(
Tôi vẫn đang hy vọng câu trả lời hay của tôi (như 'oh yea, tệp trên 1,5 GB sẽ là x nhanh hơn nếu bạn làm đệm m và tắt bảo mật n') - ok, tôi chỉ muốn vào thời điểm này.
Tôi nghĩ bạn sẽ bị ép phải thực hiện sao chép tệp, nhanh hơn cửa sổ, trên hộp cửa sổ. –
Tôi cho rằng ổ đĩa của bạn là một ổ đĩa dựa trên đĩa truyền thống. Nếu vậy, việc chunking các tập tin có thể sẽ làm chậm những thứ xuống do tìm thời gian. – Greg
Sao chép 1.6GB sang vị trí mới trên cùng ổ đĩa * * không phải là hoạt động rất tốt cho ổ đĩa cứng. Nó phải nhảy xung quanh tất cả các nơi để hỗ trợ đọc và viết mô phỏng. –