C# StreamWriter.Close的代码示例
StreamWriter.Close方法的主要功能描述
通过代码示例来学习C# StreamWriter.Close方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
StreamWriter.Close是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的StreamWriter.Close() 已经帮大家高亮显示了,大家可以重点学习StreamWriter.Close() 方法的写法,从而快速掌握该方法的应用。
StreamWriter.Close的代码示例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
在microsoft提供的AppendToNewlineSeparatedFile()方法中,该源代码示例一共有28行, 其中使用了StreamWriter.Close()1次, 并且小编将这些方法高亮显示出来了,希望对您了解StreamWriter.Close()有帮助。 如果您觉得有帮助的话,请帮忙点赞或转发。
该代码示例的点赞次数为3, 点赞数越大, 从某种程度说明这个示例对了解StreamWriter.Close()可能更有帮助。
StreamWriter.Close的代码示例2 - RunCommandWithWaitAndStdIn()
using System.IO;
///
/// Run the specified command as an external program. This method will return once the GVFSLock has been acquired.
///
/// The ID of the process that acquired the lock.
/// that can be signaled to exit the lock acquisition program.
private static ManualResetEventSlim RunCommandWithWaitAndStdIn(
GVFSFunctionalTestEnlistment enlistment,
int resetTimeout,
string pathToCommand,
string args,
string lockingProcessCommandName,
string stdinToQuit,
out int processId)
{
ManualResetEventSlim resetEvent = new ManualResetEventSlim(initialState: false);
ProcessStartInfo processInfo = new ProcessStartInfo(pathToCommand);
processInfo.WorkingDirectory = enlistment.RepoRoot;
processInfo.UseShellExecute = false;
processInfo.RedirectStandardOutput = true;
processInfo.RedirectStandardError = true;
processInfo.RedirectStandardInput = true;
processInfo.Arguments = args;
Process holdingProcess = Process.Start(processInfo);
StreamWriter stdin = holdingProcess.StandardInput;
processId = holdingProcess.Id;
enlistment.WaitForLock(lockingProcessCommandName);
Task.Run(
() =>
{
resetEvent.Wait(resetTimeout);
try
{
// Make sure to let the holding process end.
if (stdin != null)
{
stdin.WriteLine(stdinToQuit);
stdin.Close();
}
if (holdingProcess != null)
{
bool holdingProcessHasExited = holdingProcess.WaitForExit(10000);
if (!holdingProcess.HasExited)
{
holdingProcess.Kill();
}
holdingProcess.Dispose();
holdingProcessHasExited.ShouldBeTrue("Locking process did not exit in time.");
}
}
catch (Exception ex)
{
Assert.Fail($"{nameof(RunCommandWithWaitAndStdIn)} exception closing stdin {ex.ToString()}");
}
finally
{
resetEvent.Set();
}
});
return resetEvent;
}
开发者ID: microsoft, 项目名称: VFSForGit, 代码行数: 72, 代码来源: GitHelpers.cs
在microsoft提供的RunCommandWithWaitAndStdIn()方法中,该源代码示例一共有72行, 其中使用了StreamWriter.Close()1次, 并且小编将这些方法高亮显示出来了,希望对您了解StreamWriter.Close()有帮助。 如果您觉得有帮助的话,请帮忙点赞或转发。
该代码示例的点赞次数为3, 点赞数越大, 从某种程度说明这个示例对了解StreamWriter.Close()可能更有帮助。
StreamWriter.Close的代码示例3 - InvokeGitImpl()
using System.IO;
protected virtual Result InvokeGitImpl(
string command,
string workingDirectory,
string dotGitDirectory,
bool useReadObjectHook,
Action writeStdIn,
Action parseStdOutLine,
int timeoutMs,
string gitObjectsDirectory = null)
{
if (failedToSetEncoding && writeStdIn != null)
{
return new Result(string.Empty, "Attempting to use to stdin, but the process does not have the right input encodings set.", Result.GenericFailureCode);
}
try
{
// From https://msdn.microsoft.com/en-us/library/system.diagnostics.process.standardoutput.aspx
// To avoid deadlocks, use asynchronous read operations on at least one of the streams.
// Do not perform a synchronous read to the end of both redirected streams.
using (this.executingProcess = this.GetGitProcess(command, workingDirectory, dotGitDirectory, useReadObjectHook, redirectStandardError: true, gitObjectsDirectory: gitObjectsDirectory))
{
StringBuilder output = new StringBuilder();
StringBuilder errors = new StringBuilder();
this.executingProcess.ErrorDataReceived += (sender, args) =>
{
if (args.Data != null)
{
errors.Append(args.Data + "\n");
}
};
this.executingProcess.OutputDataReceived += (sender, args) =>
{
if (args.Data != null)
{
if (parseStdOutLine != null)
{
parseStdOutLine(args.Data);
}
else
{
output.Append(args.Data + "\n");
}
}
};
lock (this.executionLock)
{
lock (this.processLock)
{
if (this.stopping)
{
return new Result(string.Empty, nameof(GitProcess) + " is stopping", Result.GenericFailureCode);
}
this.executingProcess.Start();
if (this.LowerPriority)
{
try
{
this.executingProcess.PriorityClass = ProcessPriorityClass.BelowNormal;
}
catch (InvalidOperationException)
{
// This is thrown if the process completes before we can set its priority.
}
}
}
writeStdIn?.Invoke(this.executingProcess.StandardInput);
this.executingProcess.StandardInput.Close();
this.executingProcess.BeginOutputReadLine();
this.executingProcess.BeginErrorReadLine();
if (!this.executingProcess.WaitForExit(timeoutMs))
{
this.executingProcess.Kill();
return new Result(output.ToString(), "Operation timed out: " + errors.ToString(), Result.GenericFailureCode);
}
}
return new Result(output.ToString(), errors.ToString(), this.executingProcess.ExitCode);
}
}
catch (Win32Exception e)
{
return new Result(string.Empty, e.Message, Result.GenericFailureCode);
}
finally
{
this.executingProcess = null;
}
}
开发者ID: microsoft, 项目名称: VFSForGit, 代码行数: 99, 代码来源: GitProcess.cs
在microsoft提供的InvokeGitImpl()方法中,该源代码示例一共有99行, 其中使用了StreamWriter.Close()1次, 并且小编将这些方法高亮显示出来了,希望对您了解StreamWriter.Close()有帮助。 如果您觉得有帮助的话,请帮忙点赞或转发。
该代码示例的点赞次数为3, 点赞数越大, 从某种程度说明这个示例对了解StreamWriter.Close()可能更有帮助。
StreamWriter.Close的代码示例4 - WriteExtraSkinningInfo()
using System.IO;
//Extra skin data based on https://github.com/Sage-of-Mirrors/SuperBMD/blob/ce1061e9b5f57de112f1d12f6459b938594664a0/SuperBMDLib/source/Model.cs#L193
//Todo this doesn't quite work yet
//Need to adjust all mesh name IDs so they are correct
private void WriteExtraSkinningInfo(string FileName, Scene outScene, List Meshes)
{
StreamWriter test = new StreamWriter(FileName + ".tmp");
StreamReader dae = File.OpenText(FileName);
int geomIndex = 0;
while (!dae.EndOfStream)
{
string line = dae.ReadLine();
/* if (line == " ")
{
AddControllerLibrary(outScene, test);
test.WriteLine(line);
test.Flush();
}
else if (line.Contains("", $" sid=\"{ name }\" type=\"JOINT\">");
test.WriteLine(jointLine);
test.Flush();
}
else if (line.Contains(""))
{
foreach (Mesh mesh in outScene.Meshes)
{
test.WriteLine($" ");
test.WriteLine($" ");
test.WriteLine(" #skeleton_root ");
test.WriteLine(" ");
test.WriteLine(" ");
test.WriteLine($" ");
test.WriteLine(" ");
test.WriteLine(" ");
test.WriteLine(" ");
test.WriteLine(" ");
test.Flush();
}
test.WriteLine(line);
test.Flush();
}*/
if (line.Contains(" ");
test.Flush();
geomIndex++;
}
else
{
test.WriteLine(line);
test.Flush();
}
/* else if (line.Contains("", "");
test.WriteLine(matLine);
test.Flush();
}*/
}
test.Close();
dae.Close();
File.Copy(FileName + ".tmp", FileName, true);
File.Delete(FileName + ".tmp");
}
开发者ID: KillzXGaming, 项目名称: Switch-Toolbox, 代码行数: 84, 代码来源: AssimpSaver.cs
在KillzXGaming提供的WriteExtraSkinningInfo()方法中,该源代码示例一共有84行, 其中使用了StreamWriter.Close()2次, 并且小编将这些方法高亮显示出来了,希望对您了解StreamWriter.Close()有帮助。 如果您觉得有帮助的话,请帮忙点赞或转发。
该代码示例的点赞次数为3, 点赞数越大, 从某种程度说明这个示例对了解StreamWriter.Close()可能更有帮助。
StreamWriter.Close的代码示例5 - Save()
using System.IO;
public void Save(System.IO.Stream stream)
{
using (System.IO.StreamWriter file = new System.IO.StreamWriter(stream))
{
foreach (STGenericObject obj in objects)
{
file.WriteLine($"Obj Name:" + obj.ObjectName);
file.WriteLine($"Bone_Suport");
file.WriteLine($"UV_Num:1");
file.WriteLine($"vert_Array");
foreach (Vertex v in obj.vertices)
{
file.WriteLine($"{v.pos.X},{v.pos.Y},{v.pos.Z}");
file.WriteLine($"{v.nrm.X},{v.nrm.Y},{v.nrm.Z}");
file.WriteLine($"{v.col.X * 255},{v.col.Y * 255},{v.col.Z * 255},{v.col.W * 255}");
file.WriteLine($"{v.uv0.X},{v.uv0.Y}");
// file.WriteLine($"{v.uv1.X},{v.uv1.Y}");
}
file.WriteLine($"face_Array");
for (int f = 0; f < obj.faces.Count / 3; f++)
{
file.WriteLine($"{obj.faces[f] + 1},{obj.faces[f++] + 1},{obj.faces[f++] + 1}");
}
file.WriteLine($"bone_Array");
foreach (Vertex v in obj.vertices)
{
if (v.boneNames.Count == 1)
file.WriteLine($"{v.boneNames[0]} {v.boneWeights[0]}");
if (v.boneNames.Count == 2)
file.WriteLine($"{v.boneNames[0]} {v.boneWeights[0]} {v.boneNames[1]} {v.boneWeights[1]}");
if (v.boneNames.Count == 3)
file.WriteLine($"{v.boneNames[0]} {v.boneWeights[0]} {v.boneNames[1]} {v.boneWeights[1]} {v.boneNames[2]} {v.boneWeights[2]}");
if (v.boneNames.Count == 4)
file.WriteLine($"{v.boneNames[0]} {v.boneWeights[0]} {v.boneNames[1]} {v.boneWeights[1]} {v.boneNames[2]} {v.boneWeights[2]} {v.boneNames[3]} {v.boneWeights[3]}");
}
}
file.Close();
}
}
开发者ID: KillzXGaming, 项目名称: Switch-Toolbox, 代码行数: 41, 代码来源: CsvModels.cs
在KillzXGaming提供的Save()方法中,该源代码示例一共有41行, 其中使用了StreamWriter.Close()1次, 并且小编将这些方法高亮显示出来了,希望对您了解StreamWriter.Close()有帮助。 如果您觉得有帮助的话,请帮忙点赞或转发。
该代码示例的点赞次数为3, 点赞数越大, 从某种程度说明这个示例对了解StreamWriter.Close()可能更有帮助。
StreamWriter.Close的代码示例6 - SaveRecentFile()
using System.IO;
private void SaveRecentFile(string path)
{
recentToolStripMenuItem.DropDownItems.Clear();
LoadRecentList(); //load list from file
if (!(RecentFiles.Contains(path))) //prevent duplication on recent list
RecentFiles.Insert(0, path); //insert given path into list
//keep list number not exceeded the given value
while (RecentFiles.Count > MRUnumber)
{
RecentFiles.RemoveAt(MRUnumber);
}
foreach (string item in RecentFiles)
{
//create new menu for each item in list
STToolStripItem fileRecent = new STToolStripItem();
fileRecent.Click += RecentFile_click;
fileRecent.Text = item;
fileRecent.Size = new System.Drawing.Size(170, 40);
fileRecent.AutoSize = true;
fileRecent.Image = null;
//add the menu to "recent" menu
recentToolStripMenuItem.DropDownItems.Add(fileRecent);
}
//writing menu list to file
//create file called "Recent.txt" located on app folder
StreamWriter stringToWrite =
new StreamWriter(Runtime.ExecutableDir + "\\Recent.txt");
foreach (string item in RecentFiles)
{
stringToWrite.WriteLine(item); //write list to stream
}
stringToWrite.Flush(); //write stream to file
stringToWrite.Close(); //close the stream and reclaim memory
}
开发者ID: KillzXGaming, 项目名称: Switch-Toolbox, 代码行数: 37, 代码来源: MainForm.cs
在KillzXGaming提供的SaveRecentFile()方法中,该源代码示例一共有37行, 其中使用了StreamWriter.Close()1次, 并且小编将这些方法高亮显示出来了,希望对您了解StreamWriter.Close()有帮助。 如果您觉得有帮助的话,请帮忙点赞或转发。
该代码示例的点赞次数为3, 点赞数越大, 从某种程度说明这个示例对了解StreamWriter.Close()可能更有帮助。
StreamWriter.Close()方法的常见问题及解答
C#中StreamWriter.Close()的常见错误类型及注意事项
StreamWriter.Close的错误类型有很多, 这里就不一一阐述了,本文只列出一些常见的代码示例供参考,大家可以看一下代码中Catch语句中是否有常见的错误捕获及处理。
C#中StreamWriter.Close()的构造函数有哪些
StreamWriter.Close构造函数功能基本类似,只是参数不同; 目前主流的集成开发环境都已经带智能提醒了,如:Visual Studio; 大家可以非常轻松的通过Visual Studio中的智能提醒,了解对应构造函数的用法。
如何使用ChartGPT写一段StreamWriter.Close的代码
你可以在ChartGPT中输入如下的指令:"提供一个如何使用StreamWriter.Close的C#代码示例"
ChartGPT写出的代码和本文中的小编提供的代码的区别。 ChartGPT发展到现在已经非常聪明了,但需要使用这提供非常专业的问题,才可能有比较好的源代码示例; 而本文中, 小编已经帮您列出来基本所有类和所有方法的使用示例, 而且这些示例基本都是一些网络大佬提供的源码,可以更方便的供一些开发菜鸟或者资深开发参考和学习。
StreamWriter.Close所在的类及名称空间
StreamWriter.Close是System.IO下的方法。
StreamWriter.Close怎么使用?
StreamWriter.Close使用上比较简单,可以参考MSDN中的帮助文档,也参考本文中提供的7个使用示例。
StreamWriter.Close菜鸟教程
对于菜鸟来说,本文中提供的7个StreamWriter.Close写法都将非常直观的帮您掌握StreamWriter.Close的用法,是一个不错的参考教程。
本文中的StreamWriter.Close方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。