C# StreamReader.ReadToEnd的代码示例
通过代码示例来学习C# StreamReader.ReadToEnd方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
StreamReader.ReadToEnd是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的StreamReader.ReadToEnd() 已经帮大家高亮显示了,大家可以重点学习StreamReader.ReadToEnd() 方法的写法,从而快速掌握该方法的应用。
StreamReader.ReadToEnd的代码示例1 - AppendToNewlineSeparatedFile()
using System.IO; public static void AppendToNewlineSeparatedFile(PhysicalFileSystem fileSystem, string filename, string newContent) { using (Stream fileStream = fileSystem.OpenFileStream(filename, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite, false)) { using (StreamReader reader = new StreamReader(fileStream)) using (StreamWriter writer = new StreamWriter(fileStream)) { long position = reader.BaseStream.Seek(0, SeekOrigin.End); if (position > 0) { reader.BaseStream.Seek(position - 1, SeekOrigin.Begin); } string lastCharacter = reader.ReadToEnd(); if (lastCharacter != "\n" && lastCharacter != string.Empty) { writer.Write("\n"); } writer.Write(newContent.Trim()); writer.Write("\n"); } fileStream.Close(); } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:28,代码来源:BlobPrefetcher.cs
在AppendToNewlineSeparatedFile()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例2 - RetryableReadToEnd()
using System.IO; ///
/// Reads the underlying stream until it ends returning all content as a string. /// public string RetryableReadToEnd() { if (this.Stream == null) { throw new RetryableException("Stream is null (this could be a result of network flakiness), retrying."); } if (!this.Stream.CanRead) { throw new RetryableException("Stream is not readable (this could be a result of network flakiness), retrying."); } using (StreamReader contentStreamReader = new StreamReader(this.Stream)) { try { return contentStreamReader.ReadToEnd(); } catch (Exception ex) { // All exceptions potentially from network should be retried throw new RetryableException("Exception while reading stream. See inner exception for details.", ex); } } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:30,代码来源:GitEndPointResponseData.cs
在RetryableReadToEnd()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例3 - ModifiedPathsFromChangesInsideRepoSavedAfterRemount()
using System.IO; [TestCaseSource(typeof(FileSystemRunner), nameof(FileSystemRunner.Runners))] public void ModifiedPathsFromChangesInsideRepoSavedAfterRemount(FileSystemRunner fileSystem) { string[] expectedModifiedFilesContentsAfterRemount = { @"A .gitattributes", $"A {GVFSHelpers.ConvertPathToGitFormat(FileToAdd)}", $"A {GVFSHelpers.ConvertPathToGitFormat(FileToUpdate)}", $"A {FileToDelete}", $"A {GVFSHelpers.ConvertPathToGitFormat(FileToRename)}", $"A {GVFSHelpers.ConvertPathToGitFormat(RenameFileTarget)}", $"A {FolderToCreate}/", $"A {RenameNewDotGitFileTarget}", $"A {FolderToDelete}/", }; string fileToAdd = this.Enlistment.GetVirtualPathTo(FileToAdd); fileSystem.WriteAllText(fileToAdd, "Contents for the new file"); string fileToUpdate = this.Enlistment.GetVirtualPathTo(FileToUpdate); fileSystem.AppendAllText(fileToUpdate, "// Testing"); string fileToDelete = this.Enlistment.GetVirtualPathTo(FileToDelete); fileSystem.DeleteFile(fileToDelete); fileToDelete.ShouldNotExistOnDisk(fileSystem); string fileToRename = this.Enlistment.GetVirtualPathTo(FileToRename); fileSystem.MoveFile(fileToRename, this.Enlistment.GetVirtualPathTo(RenameFileTarget)); string folderToCreate = this.Enlistment.GetVirtualPathTo(FolderToCreate); fileSystem.CreateDirectory(folderToCreate); string folderToRename = this.Enlistment.GetVirtualPathTo(FolderToRename); fileSystem.CreateDirectory(folderToRename); string folderToRenameTarget = this.Enlistment.GetVirtualPathTo(RenameFolderTarget); fileSystem.MoveDirectory(folderToRename, folderToRenameTarget); // Deleting the new folder will remove it from the modified paths file fileSystem.DeleteDirectory(folderToRenameTarget); folderToRenameTarget.ShouldNotExistOnDisk(fileSystem); // Moving a file from the .git folder to the working directory should add the file to the modified paths string dotGitfileToAdd = this.Enlistment.GetVirtualPathTo(DotGitFileToCreate); fileSystem.WriteAllText(dotGitfileToAdd, "Contents for the new file in dot git"); fileSystem.MoveFile(dotGitfileToAdd, this.Enlistment.GetVirtualPathTo(RenameNewDotGitFileTarget)); string folderToDeleteFullPath = this.Enlistment.GetVirtualPathTo(FolderToDelete); fileSystem.WriteAllText(Path.Combine(folderToDeleteFullPath, "NewFile.txt"), "Contents for new file"); string newFileToDelete = Path.Combine(folderToDeleteFullPath, "NewFileToDelete.txt"); fileSystem.WriteAllText(newFileToDelete, "Contents for new file"); fileSystem.DeleteFile(newFileToDelete); fileSystem.WriteAllText(Path.Combine(folderToDeleteFullPath, "CreateCommonVersionHeader.bat"), "Changing the file contents"); fileSystem.DeleteFile(Path.Combine(folderToDeleteFullPath, "RunUnitTests.bat")); fileSystem.DeleteDirectory(folderToDeleteFullPath); folderToDeleteFullPath.ShouldNotExistOnDisk(fileSystem); // Remount this.Enlistment.UnmountGVFS(); this.Enlistment.MountGVFS(); this.Enlistment.WaitForBackgroundOperations(); string modifiedPathsDatabase = Path.Combine(this.Enlistment.DotGVFSRoot, TestConstants.Databases.ModifiedPaths); modifiedPathsDatabase.ShouldBeAFile(fileSystem); using (StreamReader reader = new StreamReader(File.Open(modifiedPathsDatabase, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))) { reader.ReadToEnd().Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).OrderBy(x => x) .ShouldMatchInOrder(expectedModifiedFilesContentsAfterRemount.OrderBy(x => x)); } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:73,代码来源:ModifiedPathsTests.cs
在ModifiedPathsFromChangesInsideRepoSavedAfterRemount()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例4 - CanReadWriteAFileInParallel()
using System.IO; [TestCaseSource(typeof(FileSystemRunner), nameof(FileSystemRunner.Runners))] [Order(3)] public void CanReadWriteAFileInParallel(FileSystemRunner fileSystem) { string fileName = @"CanReadWriteAFileInParallel"; string virtualPath = this.Enlistment.GetVirtualPathTo(fileName); // Create the file new each time. virtualPath.ShouldNotExistOnDisk(fileSystem); File.Create(virtualPath).Dispose(); bool keepRunning = true; Thread[] threads = new Thread[4]; StringBuilder[] fileContents = new StringBuilder[4]; // Writer fileContents[0] = new StringBuilder(); threads[0] = new Thread(() => { DateTime start = DateTime.Now; Random r = new Random(0); // Seeded for repeatability while ((DateTime.Now - start).TotalSeconds < 2.5) { string newChar = r.Next(10).ToString(); fileSystem.AppendAllText(virtualPath, newChar); fileContents[0].Append(newChar); Thread.Yield(); } keepRunning = false; }); // Readers for (int i = 1; i < threads.Length; ++i) { int myIndex = i; fileContents[i] = new StringBuilder(); threads[i] = new Thread(() => { using (Stream readStream = File.Open(virtualPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) using (StreamReader reader = new StreamReader(readStream, true)) { while (keepRunning) { Thread.Yield(); fileContents[myIndex].Append(reader.ReadToEnd()); } // Catch the last write that might have escaped us fileContents[myIndex].Append(reader.ReadToEnd()); } }); } foreach (Thread thread in threads) { thread.Start(); } foreach (Thread thread in threads) { thread.Join(); } for (int i = 1; i < threads.Length; ++i) { fileContents[i].ToString().ShouldEqual(fileContents[0].ToString()); } fileSystem.DeleteFile(virtualPath); }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:73,代码来源:MultithreadedReadWriteTests.cs
在CanReadWriteAFileInParallel()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例5 - OutputFileContents()
using System.IO; public static void OutputFileContents(string filename, Action
contentsValidator = null) { try { using (StreamReader reader = new StreamReader(new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))) { Console.WriteLine("----- {0} -----", filename); string contents = reader.ReadToEnd(); if (contentsValidator != null) { contentsValidator(contents); } Console.WriteLine(contents + "\n\n"); } } catch (IOException ex) { Console.WriteLine("Unable to read logfile at {0}: {1}", filename, ex.ToString()); } }
开发者ID:microsoft,项目名称:VFSForGit,代码行数:25,代码来源:TestResultsHelper.cs
在OutputFileContents()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例6 - importFromXmlToolStripMenuItem_Click()
using System.IO; private void importFromXmlToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog openFile = new OpenFileDialog(); openFile.Filter = TextFilter; if (openFile.ShowDialog() != DialogResult.OK) return; string ext = Utils.GetExtension(openFile.FileName); if (ext == ".xml") { StreamReader t = new StreamReader(new FileStream(openFile.FileName, FileMode.Open)); FileFormat.BymlData = XmlByamlConverter.FromXML(t.ReadToEnd()); } else { StreamReader t = new StreamReader(new FileStream(openFile.FileName, FileMode.Open)); FileFormat.BymlData = YamlByamlConverter.FromYaml(t.ReadToEnd()); } treeView1.Nodes.Clear(); ParseBymlFirstNode(); }
开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:20,代码来源:ByamlEditor.cs
在importFromXmlToolStripMenuItem_Click()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例7 - Load()
using System.IO; #endregion public void Load(System.IO.Stream stream) { int offset = 0x14; offset = 0; if (!Directory.Exists($"{Runtime.ExecutableDir}/LUA")) Directory.CreateDirectory($"{Runtime.ExecutableDir}/LUA"); string unluac = $"{Runtime.ExecutableDir}/LUA/unluac.jar"; string target = $"{Runtime.ExecutableDir}/LUA/{FileName}.luac"; new SubStream(stream, offset).ExportToFile(target); ProcessStartInfo start = new ProcessStartInfo(); start.FileName = "java.exe"; start.WorkingDirectory = $"{Runtime.ExecutableDir}/LUA"; start.Arguments = $"-jar {unluac} {Utils.AddQuotesIfRequired(target)}"; start.UseShellExecute = false; start.RedirectStandardOutput = true; start.CreateNoWindow = true; start.WindowStyle = ProcessWindowStyle.Hidden; using (Process process = Process.Start(start)) { using (StreamReader reader = process.StandardOutput) { try { Decompiled = reader.ReadToEnd(); } catch (Exception ex) { Toolbox.Library.Forms.STErrorDialog.Show("Failed to decompile shader!", "Shader Tools", ex.ToString()); Decompiled = ""; } } } }
开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:41,代码来源:LUAC.cs
在Load()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamReader.ReadToEnd的代码示例8 - DecompileShader()
using System.IO; public static string DecompileShader(NswShaderType shaderType, byte[] Data, ulong Address = 0) { if (!Directory.Exists("temp")) Directory.CreateDirectory("temp"); if (!Directory.Exists("ShaderTools")) Directory.CreateDirectory("ShaderTools"); // File.WriteAllBytes("temp/shader1.bin", Utils.CombineByteArray(data.ToArray())); File.WriteAllBytes("temp/shader1.bin", Data); if (!File.Exists($"{Runtime.ExecutableDir}/ShaderTools/Ryujinx.ShaderTools.exe")) { MessageBox.Show("No shader decompiler found in ShaderTools. If you want to decompile a shader, you can use Ryujinx's ShaderTools.exe and put in the ShaderTools folder of the toolbox."); return ""; } ProcessStartInfo start = new ProcessStartInfo(); start.FileName = "ShaderTools/Ryujinx.ShaderTools.exe"; start.WorkingDirectory = Runtime.ExecutableDir; start.Arguments = $"{Utils.AddQuotesIfRequired("temp/shader1.bin")}"; start.UseShellExecute = false; start.RedirectStandardOutput = true; start.CreateNoWindow = true; start.WindowStyle = ProcessWindowStyle.Hidden; using (Process process = Process.Start(start)) { using (StreamReader reader = process.StandardOutput) { try { return reader.ReadToEnd(); } catch (Exception ex) { Toolbox.Library.Forms.STErrorDialog.Show("Failed to decompile shader!", "Shader Tools", ex.ToString()); return ""; } } } }
开发者ID:KillzXGaming,项目名称:Switch-Toolbox,代码行数:43,代码来源:NSWShaderDecompile.cs
在DecompileShader()方法中,StreamReader的代码示例类中的ReadToEnd的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
本文中的StreamReader.ReadToEnd方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。