C# StreamWriter.GetType的代码示例
通过代码示例来学习C# StreamWriter.GetType方法
通过代码示例来学习编程是非常高效的。
1. 代码示例提供了一个具体而直观的学习环境,使初学者能够立即看到编程概念和语法的实际应用。
2. 通过分析和模仿现有的代码实例,初学者可以更好地理解编程逻辑和算法的工作原理。
3. 代码实例往往涵盖了多种编程技巧和最佳实践,通过学习和模仿这些实例,学习者可以逐步掌握如何编写高效、可读性强和可维护的代码。这对于初学者来说,是一种快速提升编程水平的有效途径。
StreamWriter.GetType是C#的System.IO命名空间下中的一个方法, 小编为大家找了一些网络大拿们常见的代码示例,源码中的StreamWriter.GetType() 已经帮大家高亮显示了,大家可以重点学习StreamWriter.GetType() 方法的写法,从而快速掌握该方法的应用。
StreamWriter.GetType的代码示例1 - ToText()
using System.IO; internal static string ToText(object rec, ChoCSVRecordConfiguration configuration, Encoding encoding, int bufferSize, TraceSwitch traceSwitch = null) { if (rec is DataTable) { StringBuilder csv = new StringBuilder(); configuration = configuration == null ? new ChoCSVRecordConfiguration().Configure(c => c.WithFirstLineHeader()) : configuration; using (var w = new ChoCSVWriter(csv, configuration)) w.Write(rec as DataTable); return csv.ToString(); } else if (rec is IDataReader) { StringBuilder csv = new StringBuilder(); configuration = configuration == null ? new ChoCSVRecordConfiguration().Configure(c => c.WithFirstLineHeader()) : configuration; using (var w = new ChoCSVWriter(csv, configuration)) w.Write(rec as IDataReader); return csv.ToString(); } ChoCSVRecordWriter writer = new ChoCSVRecordWriter(rec.GetType(), configuration); writer.TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitchOff : traceSwitch; using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var sw = new StreamWriter(stream, configuration.Encoding, configuration.BufferSize)) { writer.WriteTo(sw, new object[] { rec }).Loop(); sw.Flush(); stream.Position = 0; return reader.ReadToEnd(); } }
开发者ID:Cinchoo,项目名称:ChoETL,代码行数:35,代码来源:ChoCSVWriter.cs
在ToText()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamWriter.GetType的代码示例2 - ToText()
using System.IO; internal static string ToText(object rec, ChoFixedLengthRecordConfiguration configuration, Encoding encoding, int bufferSize, TraceSwitch traceSwitch = null) { if (rec is DataTable) { StringBuilder text = new StringBuilder(); configuration = configuration == null ? new ChoFixedLengthRecordConfiguration().Configure(c => c.WithFirstLineHeader()) : configuration; using (var w = new ChoFixedLengthWriter(text, configuration)) w.Write(rec as DataTable); return text.ToString(); } else if (rec is IDataReader) { StringBuilder text = new StringBuilder(); configuration = configuration == null ? new ChoFixedLengthRecordConfiguration().Configure(c => c.WithFirstLineHeader()) : configuration; using (var w = new ChoFixedLengthWriter(text, configuration)) w.Write(rec as IDataReader); return text.ToString(); } ChoFixedLengthRecordWriter writer = new ChoFixedLengthRecordWriter(rec.GetType(), configuration); writer.TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitchOff : traceSwitch; using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var sw = new StreamWriter(stream, configuration.Encoding, configuration.BufferSize)) { writer.WriteTo(sw, new object[] { rec }).Loop(); sw.Flush(); stream.Position = 0; return reader.ReadToEnd(); } }
开发者ID:Cinchoo,项目名称:ChoETL,代码行数:35,代码来源:ChoFixedLengthWriter.cs
在ToText()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamWriter.GetType的代码示例3 - ToText()
using System.IO; internal static string ToText(object rec, ChoJSONRecordConfiguration configuration, Encoding encoding, int bufferSize, TraceSwitch traceSwitch = null) { if (rec is DataTable) { StringBuilder json = new StringBuilder(); using (var w = new ChoJSONWriter(json, configuration)) { w.Write(rec as DataTable); } return json.ToString(); } else if (rec is IDataReader) { StringBuilder json = new StringBuilder(); using (var w = new ChoJSONWriter(json, configuration)) { w.Write(rec as IDataReader); } return json.ToString(); } ChoJSONRecordWriter writer = new ChoJSONRecordWriter(rec.GetType(), configuration); writer.TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitchOff : traceSwitch; using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var sw = new StreamWriter(stream, configuration.Encoding, configuration.BufferSize)) { writer.WriteTo(sw, new object[] { rec }).Loop(); sw.Flush(); stream.Position = 0; return reader.ReadToEnd(); } }
开发者ID:Cinchoo,项目名称:ChoETL,代码行数:37,代码来源:ChoJSONWriter.cs
在ToText()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamWriter.GetType的代码示例4 - ToText()
using System.IO; public static string ToText
(TRec record, ChoXmlRecordConfiguration configuration = null, TraceSwitch traceSwitch = null, string xpath = null) where TRec : class { if (record is DataTable) { StringBuilder xml = new StringBuilder(); using (var w = new ChoXmlWriter(xml, configuration)) w.Write(record as DataTable); return xml.ToString(); } else if (record is IDataReader) { StringBuilder xml = new StringBuilder(); using (var w = new ChoXmlWriter(xml, configuration)) w.Write(record as IDataReader); return xml.ToString(); } if (configuration == null) { configuration = new ChoXmlRecordConfiguration(typeof(TRec)); configuration.IgnoreRootName = true; configuration.RootName = null; configuration.IgnoreNodeName = false; } if (record != null) { if (configuration.NodeName.IsNullOrWhiteSpace()) { ChoDynamicObject rec1 = record as ChoDynamicObject; if (rec1 != null) { if (rec1.DynamicObjectName != ChoDynamicObject.DefaultName) { configuration.NodeName = rec1.DynamicObjectName; } else { //configuration.IgnoreNodeName = true; //configuration.NodeName = null; } } else { XmlRootAttribute root = ChoType.GetCustomAttribute (record.GetType(), false); string nodeName = "XElement"; if (root != null && !root.ElementName.IsNullOrWhiteSpace()) nodeName = root.ElementName.Trim(); else nodeName = record.GetType().Name; configuration.NodeName = nodeName; } } } using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var writer = new StreamWriter(stream)) using (var parser = new ChoXmlWriter (writer, configuration) { TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitch : traceSwitch }) { //parser.Configuration.XPath = xpath; if (record != null) parser.Write(ChoEnumerable.AsEnumerable (record)); parser.Close(); writer.Flush(); stream.Position = 0; return reader.ReadToEnd(); } }
开发者ID:Cinchoo,项目名称:ChoETL,代码行数:77,代码来源:ChoXmlWriter.cs
在ToText()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了2次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamWriter.GetType的代码示例5 - ToText()
using System.IO; internal static string ToText(object rec, ChoYamlRecordConfiguration configuration, Encoding encoding, int bufferSize, TraceSwitch traceSwitch = null) { if (rec is DataTable) { StringBuilder json = new StringBuilder(); using (var w = new ChoYamlWriter(json, configuration)) { w.Write(rec as DataTable); } return json.ToString(); } else if (rec is IDataReader) { StringBuilder json = new StringBuilder(); using (var w = new ChoYamlWriter(json, configuration)) { w.Write(rec as IDataReader); } return json.ToString(); } ChoYamlRecordWriter writer = new ChoYamlRecordWriter(rec.GetType(), configuration); writer.TraceSwitch = traceSwitch == null ? ChoETLFramework.TraceSwitchOff : traceSwitch; using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var sw = new StreamWriter(stream, configuration.Encoding, configuration.BufferSize)) { writer.WriteTo(sw, new object[] { rec }).Loop(); sw.Flush(); stream.Position = 0; return reader.ReadToEnd(); } }
开发者ID:Cinchoo,项目名称:ChoETL,代码行数:37,代码来源:ChoYamlWriter.cs
在ToText()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamWriter.GetType的代码示例6 - BuildDelegate()
using System.IO; public static TDelegate BuildDelegate
(string functionBody, string functionNamespace, string[] usingNamespaces, Assembly[] assemblies) where TDelegate : class { Assembler assembler = new Assembler(); assembler.AddSharpmakeAssemblies(); assembler.Assemblies.AddRange(assemblies); const string className = "AssemblerBuildFunction_Class"; const string methodName = "AssemblerBuildFunction_Method"; // Fix : Bug with -> Path.GetTempFileName // http://msdn.microsoft.com/en-ca/library/windows/desktop/aa364991(v=vs.85).aspx // Limit of 65535 limit on files when generating the temp file. New temp file will use // a new Guid as filename and Sharpmake will clean the temporary files when done by aggregating // the temp files and deleting them. // eg. "C:\\fastbuild-work\\85f7d472c25d494ca09f2ea7fe282d50" //string sourceTmpFile = Path.GetTempFileName(); string sourceTmpFile = Path.Combine(Path.GetTempPath(), (Guid.NewGuid().ToString("N") + ".tmp.sharpmake.cs")); Type delegateType = typeof(TDelegate); Error.Valid(IsDelegate(delegateType), "BuildDelegate (), TDelegate is not a delegate"); MethodInfo methodInfo = GetDelegateMethodInfo(delegateType); using (StreamWriter writer = new StreamWriter(sourceTmpFile)) { // add using namespace... foreach (string usingNamespace in usingNamespaces) writer.WriteLine("using {0};", usingNamespace); writer.WriteLine(); // namespace name writer.WriteLine("namespace {0}", functionNamespace); writer.WriteLine("{"); writer.WriteLine(" public static class {0}", className); writer.WriteLine(" {"); // write method signature string returnTypeName = methodInfo.ReturnType == typeof(void) ? "void" : methodInfo.ReturnType.FullName; writer.Write(" public static {0} {1}(", returnTypeName, methodName); ParameterInfo[] parameters = methodInfo.GetParameters(); for (int i = 0; i < parameters.Length; i++) { string parametersName = parameters[i].Name; string parametersType = (parameters[i].ParameterType == typeof(object)) ? "Object" : parameters[i].ParameterType.FullName; writer.Write("{0}{1} {2}", i == 0 ? "" : ", ", parametersType, parametersName); } writer.WriteLine(")"); // write method body writer.WriteLine(" {"); writer.WriteLine(" {0}" + Environment.NewLine, functionBody.Replace("\n", "\n ")); writer.WriteLine(" }"); writer.WriteLine(" }"); writer.WriteLine("}"); } // build in memory Assembly assembly = assembler.Build(builderContext: null, libraryFile: null, sources: sourceTmpFile).Assembly; InternalError.Valid(assembly != null); // Try to delete tmp file to prevent pollution, but useful while debugging //if (!System.Diagnostics.Debugger.IsAttached) Util.TryDeleteFile(sourceTmpFile); // Scan assembly to find our tmp class string fullClassName = functionNamespace + "." + className; Type buildedType = assembly.GetType(fullClassName); // get out method to bind into the delegate MethodInfo builtMethod = buildedType.GetMethod(methodName); InternalError.Valid(builtMethod != null); // bind the method Delegate returnDelegate; try { returnDelegate = builtMethod.CreateDelegate(delegateType); InternalError.Valid(returnDelegate != null); } catch (Exception e) { throw new InternalError(e); } TDelegate result = returnDelegate as TDelegate; InternalError.Valid(result != null, "Cannot cast built delegate into user delegate"); return result; }
开发者ID:ubisoft,项目名称:Sharpmake,代码行数:93,代码来源:Assembler.cs
在BuildDelegate()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
StreamWriter.GetType的代码示例7 - WriteNodeDescription()
public void WriteNodeDescription(System.IO.StreamWriter stream, bool writeExternNodes, bool verbose, string prefix) { bool isExternProject = IsExtern(); _nodeVisited = true; bool writeDescription = (isExternProject == writeExternNodes); if (writeDescription) { stream.Write("\t" + GetUniqueId() + "[label=<" + GetDisplayedName(verbose) + ">"); string shape; if (isExternProject) shape = DependencyTracker.ShapeExtern; else { switch (_configOutputType) { case Project.Configuration.OutputType.Exe: case Project.Configuration.OutputType.Dll: case Project.Configuration.OutputType.Lib: shape = DependencyTracker.ShapeProject; break; default: shape = DependencyTracker.ShapeUnknown; break; } } string color; Project.Configuration.OutputType outputType = Project.Configuration.OutputType.None; if (_configOutputType != Project.Configuration.OutputType.None) { outputType = _configOutputType; } else if (_config != null) { // output type might be defined in inherited target class (this is the case for some extern project). Try to find it through reflection. try { System.Type type = _config.Target.GetType(); System.Reflection.FieldInfo field = type.GetField("OutputType"); object fieldValue = field.GetValue(_config.Target); switch (fieldValue.ToString()) { case "Dll": outputType = Project.Configuration.OutputType.Dll; break; case "Lib": outputType = Project.Configuration.OutputType.Lib; break; case "Exe": outputType = Project.Configuration.OutputType.Exe; break; default: outputType = Project.Configuration.OutputType.None; break; } } catch { } } switch (outputType) { case Project.Configuration.OutputType.Exe: color = isExternProject ? DependencyTracker.ColorExternExe : DependencyTracker.ColorExe; break; case Project.Configuration.OutputType.Dll: color = isExternProject ? DependencyTracker.ColorExternDll : DependencyTracker.ColorDll; break; case Project.Configuration.OutputType.Lib: color = isExternProject ? DependencyTracker.ColorExternLib : DependencyTracker.ColorLib; break; default: color = DependencyTracker.ColorUnkownOutputType; break; } stream.WriteLine(" shape = " + shape + ", style=filled, fillcolor = " + color + ", fontsize=8, fontname=\"sans-serif\"]"); } foreach (var dep in _dependenciesTo) { if (!dep.Key.IsNodeVisited()) dep.Key.WriteNodeDescription(stream, writeExternNodes, verbose, prefix + " "); } }
开发者ID:ubisoft,项目名称:Sharpmake,代码行数:87,代码来源:TrackedConfiguration.cs
在WriteNodeDescription()方法中,StreamWriter的代码示例类中的GetType的代码示例方法一共出现了1次, 见黄色背景高亮显示的地方,欢迎大家点赞
本文中的StreamWriter.GetType方法示例由csref.cn整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。