文件批量生成IO流读写

 /// <summary>
        /// 生成文件的
        /// </summary>
        /// <param name="calssName"></param>
        public void create(string calssName) {
            //获取程序集
            var createClass = Assembly.Load("CloudInnovate.Backstage.Entity");
            //反射出所有的类
            List<Type> ts = createClass.GetTypes().ToList();
            //循环生成
            ts.ForEach(x =>
            {
                //x.Namespace获取命名空间
                var ss = "using " + x.Namespace + ";\n" +
                         "using CloudInnovate.CoreFramework."+ calssName+";\n" +
                         "using System;\n" +
                         "using System.Collections.Generic;\n" +
                         "using System.Text;\n\n" +

                         "namespace CloudInnovate.Backstage.I" + calssName + "\n" +
                            "{\n" +
                                "\tpublic interface I" + x.Name.Substring(0, x.Name.Length - 6) + "" + calssName + " : IBase" + calssName + "<" + x.Name + ">\n" +
                                "\t{\n" +

                                "\t}\n" +
                            "}\n";
                //保存 开启文件流
                using (FileStream fs = new FileStream(@"C:\Users\Administrator\Desktop\IService\I" + x.Name.Substring(0, x.Name.Length - 6) + "" + calssName + ".cs", FileMode.Create))
                {
                    //文本写入 开启读写流
                    using (StreamWriter sw = new StreamWriter(fs))
                    {
                        sw.Write(ss);
                    }
                }
            });
        }

  

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

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

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

原文地址:https://www.cnblogs.com/chenxi001/p/11731066.html

时间: 2024-10-26 10:13:29

文件批量生成IO流读写的相关文章

IO流 读写文件

读写文件 如前所述,一个流被定义为一个数据序列.输入流用于从源读取数据,输出流用于向目标写数据. 下图是一个描述输入流和输出流的类层次图. 下面将要讨论的两个重要的流是 FileInputStream 和 FileOutputStream: FileInputStream 该流用于从文件读取数据,它的对象可以用关键字 new 来创建. 有多种构造方法可用来创建对象. 可以使用字符串类型的文件名来创建一个输入流对象来读取文件: InputStream f = new FileInputStream

java文件操作(IO流)

一.引言 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本能力.本章IO类的使用就从读写文件开始. 文件操作 文件(File)是 最常见的数据源之一,在程序中经常需要将数据存储到文件中,例如图片文件.声音文件等数据文件,也经常需要根据需要从指定的文件中进行数据的读取.当然, 在实际使用时,文件都包含一个的格式,这个格式需要程序员根据需要进行设计,读取已有的文件

C#文件操作(IO流 摘抄)

11 文件操作概述 11.1 驱动器 在Windows操作系统中,存储介质统称为驱动器,硬盘由于可以划分为多个区域,每一个区域称为一个驱动器..NET Framework提供DriveInfo类和 DriveType枚举型,以方便在程序中直接使用驱动器.DriveInfo类的常用字段成员有DriveFormat(文件系统格式,如NTFS或FAT32).DriveType(驱动器类型).Name(驱动器名).TotalSize(总空间).TotalFreeSpace(获得驱动器可用空间).常用的方

Java IO流读写文件的几个注意点

平时写IO相关代码机会挺少的,但却都知道使用BufferedXXXX来读写效率高,没想到里面还有这么多陷阱,这两天突然被其中一个陷阱折腾一下:读一个文件,然后写到另外一个文件,前后两个文件居然不一样? 解决这个问题之后,总结了几个注意点. 注意点一:Reader/Writer读写二进制文件是有问题的 : public void copyFile1() { File srcFile = new File("E://atest//atest.txt"); File dstFile = ne

191108、Java IO流读写文件的几个注意点

平时写IO相关代码机会挺少的,但却都知道使用BufferedXXXX来读写效率高,没想到里面还有这么多陷阱,这两天突然被其中一个陷阱折腾一下:读一个文件,然后写到另外一个文件,前后两个文件居然不一样? 解决这个问题之后,总结了几个注意点. 注意点一:Reader/Writer读写二进制文件是有问题的 : 上面代码使用BufferedReader一行一行地读取一个文件,然后使用BufferedWriter把读取到的数据写到另外一个文件中.如果文件是ASCCII形式的,则内容还是能够正确读取的.但如

io流读写及相关内容

列出某个目录下的所有文件: File file = new File("e:\\总结"); File[] files = file.listFiles(); for(int i=0; i<files.length; i++){ if(files[i].isFile()) System.out.println(files[i]); } 列出某个目录下的所有子目录: File file = new File("e:\\总结"); File[] files = fi

Java--&gt;用递归方法复制目录、子目录以及文件(文件用到IO流)

package com.dragon.java.newcopyfile; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Test { public static void main(String args[]) { File file = new File("f:/Exercises&quo

java IO流文件的读写具体实例(转载)

引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能找到,但自己总感觉不是很踏实,所以今天就抽空看了看java IO流的一些操作,感觉还是很有收获的,顺便总结些资料,方便以后进一步的学习... IO流的分类:1.根据流的数据对象来分:高端流:所有的内存中的流都是高端流,比如:InputStreamReader  低端流:所有的外界设备中的流都是低端流

文件传输基础——Java IO流

第一章 文件的编码 package com.imooc.io; public class EncodeDemo { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String s="欢迎你ABC"; byte[] byte1=s.getBytes(); for (byte b : byte1) { //把字节转换成16进制的方式显示 Sys