C# FileStream.CopyTo的代码示例
通过代码示例来学习C# FileStream.CopyTo方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
FileStream.CopyTo是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的FileStream.CopyTo() 已经帮大家高亮显示了,大家可以重点学习FileStream.CopyTo() 方法的写法,从而快速掌握该方法的应用。
FileStream.CopyTo的代码示例1 - GetIndexHash()
using System.IO; private byte[] GetIndexHash() { if (this.shouldHashIndex) { using (Stream fileStream = new FileStream(this.indexLockPath, FileMode.Open, FileAccess.Read, FileShare.Write)) using (HashingStream hasher = new HashingStream(fileStream)) { hasher.CopyTo(Stream.Null); return hasher.Hash; } } return new byte[20]; }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:16,代码来源:GitIndexGenerator.cs
在GetIndexHash()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例2 - SignIndex()
using System.IO; private void SignIndex() { using (ITracer activity = this.tracer.StartActivity("SignIndex", EventLevel.Informational, Keywords.Telemetry, metadata: null)) { using (FileStream fs = File.Open(this.indexPath, FileMode.Open, FileAccess.ReadWrite)) { // Truncate the old hash off. The Index class is expected to preserve any existing hash. fs.SetLength(fs.Length - 20); using (HashingStream hashStream = new HashingStream(fs)) { fs.Position = 0; hashStream.CopyTo(Stream.Null); byte[] hash = hashStream.Hash; // The fs pointer is now where the old hash used to be. Perfect. :) fs.Write(hash, 0, hash.Length); } } } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:22,代码来源:Index.cs
在SignIndex()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例3 - AddBoardsToSet()
using System.IO; public void AddBoardsToSet(List
FileList, ProgressLog Logger , bool fixgroup = true, bool forcezerowidth = false) { Logger.PushActivity("AddBoardsToSet"); foreach (var a in FileList) { Logger.AddString(String.Format("adding {0}", a)); BoardSide aSide = BoardSide.Unknown; BoardLayer aLayer = BoardLayer.Unknown; string ext = Path.GetExtension(a); if (ext == ".zip") { using (ZipFile zip1 = ZipFile.Read(a)) { foreach (ZipEntry e in zip1) { MemoryStream MS = new MemoryStream(); if (e.IsDirectory == false) { // e.Extract(MS); // MS.Seek(0, SeekOrigin.Begin); Gerber.DetermineBoardSideAndLayer(e.FileName, out aSide, out aLayer); if (aLayer == BoardLayer.Outline) hasgko = true; // AddFileStream(MS, e.FileName, drillscaler); } } } } else { Gerber.DetermineBoardSideAndLayer(a, out aSide, out aLayer); } if (aLayer == BoardLayer.Outline) hasgko = true; } foreach (var a in FileList) { if (Logger != null) Logger.AddString(String.Format("Loading {0}", Path.GetFileName(a))); string ext = Path.GetExtension(a); if (ext == ".zip") { using (ZipFile zip1 = ZipFile.Read(a)) { foreach (ZipEntry e in zip1) { MemoryStream MS = new MemoryStream(); if (e.IsDirectory == false) { if (Logger != null) Logger.AddString(String.Format("Loading inside zip: {0}", Path.GetFileName(e.FileName))); e.Extract(MS); MS.Seek(0, SeekOrigin.Begin); AddFileToSet(MS, e.FileName, Logger, 1, forcezerowidth); } } } } else { try { MemoryStream MS2 = new MemoryStream(); FileStream FS = File.OpenRead(a); FS.CopyTo(MS2); MS2.Seek(0, SeekOrigin.Begin); AddFileToSet(MS2, a, Logger,1, forcezerowidth); } catch (Exception E) { Logger.AddString(String.Format("Failed to add file! {0},{1}", a, E)); } } } if (fixgroup) { if (Logger != null) Logger.AddString("Checking for common file format mistakes."); FixEagleDrillExportIssues(Logger); CheckRelativeBoundingBoxes(Logger); CheckForOutlineFiles(Logger); CheckRelativeBoundingBoxes(Logger); } Logger.PopActivity(); }
开发者ID:ThisIsNotRocketScience,项目名称:GerberTools,代码行数:90,代码来源:ImageCreator.cs
在AddBoardsToSet()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例4 - AddFile()
using System.IO; public void AddFile(ProgressLog log, string filename, double drillscaler = 1.0) { string[] filesplit = filename.Split('.'); string ext = filesplit[filesplit.Count() - 1].ToLower(); if (ext == "zip") { using (ZipFile zip1 = ZipFile.Read(filename)) { foreach (ZipEntry e in zip1) { MemoryStream MS = new MemoryStream(); if (e.IsDirectory == false) { e.Extract(MS); MS.Seek(0, SeekOrigin.Begin); AddFileStream(log, MS, e.FileName, drillscaler); } } } return; } MemoryStream MS2 = new MemoryStream(); FileStream FS = File.OpenRead(filename); FS.CopyTo(MS2); MS2.Seek(0, SeekOrigin.Begin); AddFileStream(log, MS2, filename, drillscaler); }
开发者ID:ThisIsNotRocketScience,项目名称:GerberTools,代码行数:34,代码来源:LoadedStuff.cs
在AddFile()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例5 - AddBoardsToSet()
using System.IO; public void AddBoardsToSet(List
FileList, bool fixgroup = true, ProgressLog Logger = null) { foreach (var a in FileList) { BoardSide aSide = BoardSide.Unknown; BoardLayer aLayer = BoardLayer.Unknown; string ext = Path.GetExtension(a); if (ext == ".zip") { using (ZipFile zip1 = ZipFile.Read(a)) { foreach (ZipEntry e in zip1) { MemoryStream MS = new MemoryStream(); if (e.IsDirectory == false) { // e.Extract(MS); // MS.Seek(0, SeekOrigin.Begin); Gerber.DetermineBoardSideAndLayer(e.FileName, out aSide, out aLayer); if (aLayer == BoardLayer.Outline) HasLoadedOutline = true; // AddFileStream(MS, e.FileName, drillscaler); } } } } else { Gerber.DetermineBoardSideAndLayer(a, out aSide, out aLayer); } if (aLayer == BoardLayer.Outline) HasLoadedOutline = true; } foreach (var a in FileList) { if (Logger != null) Logger.AddString(String.Format("Loading {0}", Path.GetFileName(a))); string ext = Path.GetExtension(a); if (ext == ".zip") { using (ZipFile zip1 = ZipFile.Read(a)) { foreach (ZipEntry e in zip1) { MemoryStream MS = new MemoryStream(); if (e.IsDirectory == false) { if (Logger != null) Logger.AddString(String.Format("Loading inside zip: {0}", Path.GetFileName(e.FileName))); e.Extract(MS); MS.Seek(0, SeekOrigin.Begin); AddFileToSet(MS, e.FileName, Logger); } } } } else { MemoryStream MS2 = new MemoryStream(); FileStream FS = File.OpenRead(a); FS.CopyTo(MS2); MS2.Seek(0, SeekOrigin.Begin); AddFileToSet(MS2, a, Logger); } } if (fixgroup) { if (Logger != null) Logger.AddString("Checking for common file format mistakes."); FixEagleDrillExportIssues(Logger); CheckRelativeBoundingBoxes(Logger); CheckForOutlineFiles(Logger); CheckRelativeBoundingBoxes(Logger); } }
开发者ID:ThisIsNotRocketScience,项目名称:GerberTools,代码行数:79,代码来源:SickOfBeige.cs
在AddBoardsToSet()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例6 - WriteFile()
using System.IO; //Saving memory stream to a new file with the given path private static bool WriteFile(MemoryStream InputStream, string path) { if (File.Exists(path)) File.Delete(path); if (!File.Exists(path)) { try { using (FileStream fs = File.Create(path)) { InputStream.Seek(0, SeekOrigin.Begin); InputStream.CopyTo(fs); } return true; } catch (Exception e) { Console.WriteLine("The following exception was thrown during creation and writing to the file \"{0}\"", path); Console.WriteLine(e.Message); return false; } } else { Console.WriteLine("Can not create file \"{0}\". File already exists", path); return false; } }
开发者ID:Cinchoo,项目名称:ChoETL,代码行数:33,代码来源:Program.cs
在WriteFile()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例7 - Compile()
using System.IO; private Assembly Compile(IBuilderContext builderContext, IEnumerable
syntaxTrees, string libraryFile, HashSet fileReferences) { // Add references var metadataReferences = new List (); foreach (var reference in fileReferences.Where(r => !string.IsNullOrEmpty(r))) { // Skip references that are already provided by the runtime if (BasicReferenceAssemblies.All.Any(a => string.Equals(Path.GetFileName(reference), a.FilePath, StringComparison.OrdinalIgnoreCase))) continue; metadataReferences.Add(MetadataReference.CreateFromFile(reference)); } metadataReferences.AddRange(BasicReferenceAssemblies.All); // suppress assembly redirect warnings // cf. https://github.com/dotnet/roslyn/issues/19640 var noWarn = new List > { new KeyValuePair ("CS1701", ReportDiagnostic.Suppress), new KeyValuePair ("CS1702", ReportDiagnostic.Suppress), }; // Compile var compilationOptions = new CSharpCompilationOptions( OutputKind.DynamicallyLinkedLibrary, optimizationLevel: (builderContext == null || builderContext.DebugScripts) ? OptimizationLevel.Debug : OptimizationLevel.Release, warningLevel: 4, specificDiagnosticOptions: noWarn, deterministic: true ); var assemblyName = libraryFile != null ? Path.GetFileNameWithoutExtension(libraryFile) : $"Sharpmake_{new Random().Next():X8}" + GetHashCode(); var compilation = CSharpCompilation.Create(assemblyName, syntaxTrees, metadataReferences, compilationOptions); string pdbFilePath = libraryFile != null ? Path.ChangeExtension(libraryFile, ".pdb") : null; using (var dllStream = new MemoryStream()) using (var pdbStream = new MemoryStream()) { EmitResult result = compilation.Emit( dllStream, pdbStream, options: new EmitOptions( debugInformationFormat: DebugInformationFormat.PortablePdb, pdbFilePath: pdbFilePath ) ); bool throwErrorException = builderContext == null || builderContext.CompileErrorBehavior == BuilderCompileErrorBehavior.ThrowException; LogCompilationResult(result, throwErrorException); if (result.Success) { if (libraryFile != null) { dllStream.Seek(0, SeekOrigin.Begin); using (var fileStream = new FileStream(libraryFile, FileMode.Create)) dllStream.CopyTo(fileStream); pdbStream.Seek(0, SeekOrigin.Begin); using (var pdbFileStream = new FileStream(pdbFilePath, FileMode.Create)) pdbStream.CopyTo(pdbFileStream); return Assembly.LoadFrom(libraryFile); } return Assembly.Load(dllStream.GetBuffer(), pdbStream.GetBuffer()); } } return null; }
开发者ID:ubisoft,项目名称:Sharpmake,代码行数:74,代码来源:Assembler.cs
在Compile()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
FileStream.CopyTo的代码示例8 - Seek()
using System.IO; public override long Seek(long offset, SeekOrigin origin) { var position = origin == SeekOrigin.Begin ? offset : origin == SeekOrigin.Current ? _stream.Position + offset : _stream.Position - offset; // when offset pass limit first time, change current _stream from MemoryStrem to FileStream with TempFilename() if (position > _maxMemoryUsage && this.InMemory) { // create new filename if not passed on ctor (must be unique _filename = _filename ?? Path.Combine(Path.GetTempPath(), "litedb_" + Guid.NewGuid() + ".db"); var file = new FileStream(_filename, FileMode.CreateNew, FileAccess.ReadWrite, FileShare.None, PAGE_SIZE, FileOptions.RandomAccess); // copy data from memory to disk _stream.Position = 0; _stream.CopyTo(file); // dispose MemoryStream _stream.Dispose(); // and replace with FileStream _stream = file; } return _stream.Seek(offset, origin); }
开发者ID:mbdavid,项目名称:LiteDB,代码行数:30,代码来源:TempStream.cs
在Seek()方法中,FileStream的代码示例类中的CopyTo的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
本文中的FileStream.CopyTo方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。