zoukankan      html  css  js  c++  java
  • 文件批量生成IO流读写

    /// <summary>
            /// 生成文件的
            /// </summary>
            /// <param name="calssName"></param>
            public void create(string calssName)
            {
                //获取程序集
                var createClass = Assembly.Load("Entity");
                //反射出所有的类
                List<Type> ts = createClass.GetTypes().ToList();
                //循环生成
                ts.ForEach(x =>
                {
                    //x.Namespace获取命名空间
                    var ss = "using " + x.Namespace + ";
    " +
                             "using CoreFramework." + calssName + ";
    " +
                             "using System;
    " +
                             "using System.Collections.Generic;
    " +
                             "using System.Text;
    
    " +
    
                             "namespace I" + calssName + "
    " +
                                "{
    " +
                                    "	public interface I" + x.Name.Substring(0, x.Name.Length - 6) + "" + calssName + " : IBase" + calssName + "<" + x.Name + ">
    " +
                                    "	{
    " +
    
                                    "	}
    " +
                                "}
    ";
                    //创建文件夹
                    if (!Directory.Exists(@"C:UsersDesktopI" + calssName + ""))
                    {
                        Directory.CreateDirectory(@"C:UsersDesktopI" + calssName + "");
                    }
                    //创建文件夹
                    if (!Directory.Exists(@"C:UsersDesktopI" + calssName + @"" + x.Name.Substring(0, x.Name.Length - 6) + ""))
                    {
                        Directory.CreateDirectory(@"C:UsersDesktopI" + calssName + @"" + x.Name.Substring(0, x.Name.Length - 6) + "");
                    }
                    //保存 开启文件流
                    using (FileStream fs = new FileStream(@"C:UsersDesktopI" + calssName + @"" + x.Name.Substring(0, x.Name.Length - 6) + @"I" + x.Name.Substring(0, x.Name.Length - 6) + "" + calssName + ".cs", FileMode.Create))
                    {
                        //文本写入 开启读写流
                        using (StreamWriter sw = new StreamWriter(fs))
                        {
                            sw.Write(ss);
                        }
                    }
                });
            }

    最近在项目中使用了仓储模式有些代码太过于重复了所以想写个生成。

    本来是想用T4模板的,但是感觉T4不好用,所以就是使用了读写了直接写入吧。

    主要就是想记录一下,好记性不如烂笔头。所以想博客记录一下。

  • 相关阅读:
    搭建kafka高级消费 (high-consumer)php7
    kafka搭建到配置borker集群(项目开发-区块链)
    快速提高谷歌浏览器(Chrome)自带下载器的网速
    利用IO和File类实现拷贝文件目录问题
    随机红包小算法
    二叉树前序中序后序层序遍历问题
    荷兰国旗问题
    二分法查找
    找出数组中最大值and索引
    数组元素反转
  • 原文地址:https://www.cnblogs.com/chenxi001/p/11731066.html
Copyright © 2011-2022 走看看