基本上我需要复制一个文件(FAT或NTFS),而无需使用微软的System.IO.File.Copy
库。我正在使用COSMOS(C#开源托管操作系统),因为这不是Windows,所以File.Copy
不起作用。如何跨平台复制C#文件?
任何帮助,将不胜感激。
基本上我需要复制一个文件(FAT或NTFS),而无需使用微软的System.IO.File.Copy
库。我正在使用COSMOS(C#开源托管操作系统),因为这不是Windows,所以File.Copy
不起作用。如何跨平台复制C#文件?
任何帮助,将不胜感激。
您是否有System.IO命名空间的其他部分?最值得注意的是,各种流?
如果不是,那么我看不出你应该怎么能够复制任何东西。
但是,假设你可以打开文件进行读,写,你可以平凡实现自己的复制方法:
private void CopyFile(string source, string dest)
{
using (var input = new FileStream(source, FileMode.Open, FileAccess.Read))
using (var output = new FileStream(dest, FileMode.OpenOrCreate, FileAccess.Write))
{
byte[] data = new byte[1024];
int bytesRead = 0;
do
{
bytesRead = input.Read(data, 0, data.Length);
if (bytesRead > 0)
output.Write(data, 0, data.Length);
} while (bytesRead > 0);
}
}
(上面代码中未测试)
[Stream.CopyTo](http://msdn.microsoft.com/tr-tr/library/system.io.stream.copyto.aspx) –
这是一个新的,因为.NET 4我认为,机会是COSMOS不'没有。但如果它在那里,那么通过一切手段,OP应该使用它而不是重新实现它 –
它与'COSMOS'没有关系。它是你的循环的替代 –
我的猜测是,有COSMOS例程这种IO。 –