using System.IO;

using System.Text;
/// <summary>
/// SCPage 的摘要说明 修改 aspx 和aspx.cs文件
/// </summary>
public class SCPage
{
    public SCPage() { }

System.Web.UI.Page p = new Page();

/// <summary>
    /// 生成aspx文件
    /// </summary>
    /// <param name="content"></param>
    public bool SCPages(string pageName, string content)
    {
        // AccessPublicClass apc = new AccessPublicClass();
        string path = p.Server.MapPath("BaseReport.aspx");
        string module = FileStreamReader(path);
        module = module.Replace("content", content);
        string paths = p.Server.MapPath("Template/" + pageName + ".aspx");
        module = module.Replace("BaseReport.aspx.cs", pageName + ".aspx.cs");
        module = module.Replace("BaseReport", pageName);
        bool result = FileStreamWrite(paths, module);
        return result;
    }

/// <summary>
    /// 生成cs文件
    /// </summary>
    /// <param name="content"></param>
    public bool SCCs(string pageName,string sqlInsert)
    {
        //  AccessPublicClass apc = new AccessPublicClass();
        string path = p.Server.MapPath("BaseReport.aspx.cs");
        string module = FileStreamReader(path);
        module = module.Replace("sqlInsertReplace", sqlInsert);
        string paths = p.Server.MapPath("Template/"+pageName + ".aspx.cs");
        module = module.Replace("BaseReport", pageName);
        bool result = FileStreamWrite(paths, module);
        return result;
    }

/// <summary>
    /// 对文件进行流的操作
    /// </summary>
    /// <param name="path">路径</param>
    /// <returns></returns> 
    public string FileStreamReader(string path)
    {
        FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read);

StreamReader sr = new StreamReader(fs, Encoding.UTF8);

//从流的当前位置到末尾读取流
        string v = sr.ReadToEnd();

fs.Close();

sr.Close();

return v;
    }

public bool FileStreamWrite(string path, string content)
    {

FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write);

StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.UTF8);
        try
        {
            //将文件写入流中
            sw.WriteLine(content);

return true;
        }
        catch
        {
            return false;
        }
        finally
        {
            sw.Flush();
            fs.Flush();
            fs.Close();
        }
    }
}

动态生成修改aspx文件的更多相关文章

  1. Java 动态生成 复杂 .doc文件

    阅读目录 1.word 里面调整好排版,包括你想生成的动态部分,还有一些不用生成的规则性的文字 2. 将 word 文档保存为 xml 3.用 Firstobject free XML edito 打 ...

  2. 如何获取java运行时动态生成的class文件?

    查看运行时生成的文件,以更清楚运行情况. 查看动态生成的类,一般有两个方法: 1. 使用据说是jdk自带包sa-jdi.jar里的工具. 其中,不想自己搞,当然就利用下,sa-jdi.jar 里自带的 ...

  3. C# 动态生成Html地图文件

    public void GPSModel(string x, string y, string ss)//动态地图文件 { if (x.Contains("-") &&am ...

  4. ASP.NET C# 打包再修改aspx文件报错解决方案

    aspx文件最开始: <%@ page language="C#" autoeventwireup="true" inherits="tiddk ...

  5. php动态生成一个xml文件供swf调用

    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdo ...

  6. ABAP动态生成经典应用之Dynamic SQL Excute 程序

    [转自http://blog.csdn.net/mysingle/article/details/678598]开发说明:在SAP的系统维护过程中,有时我们需要修改一些Table中的数据,可是很多Ta ...

  7. IT咨询服务-客户案例(四):根据图片等素材,动态生成个性化图片

    最近,慕名而来一个客户. 客户的目标    网站来一个用户,选择模版,上传图片等素材,生成自定义的图片,或者静态网站,然后分享到社交网站.有点类似于,网上制作名片,选择模版,输入个人信息,生成名片的设 ...

  8. Emit动态生成代理类用于监控对象的字段修改

    利用Emit动态生成代理对象监控对象哪些字段被修改,被修改为什么值 被Register的对象要监控的值必须是Virtual虚类型 必须使用CreateInstance创建对象 必须使用DynamicP ...

  9. 通过 ASM 库生成和修改 class 文件

    在 JVM中 Class 文件分析 主要详细讲解了Class文件的格式,并且在上一篇文章中做了总结. 众所周知,JVM 在运行时, 加载并执行class文件, 这个class文件基本上都是由我们所写的 ...

随机推荐

  1. mysql可视化管理工具

    1.navicat for mysql 2.navicat premium 3.HeidiSQL 4.MySQLWorkbench

  2. 理解Python的迭代器

    首先,廖雪峰老师的教程中解释了迭代器和生成器,这篇文章只是补充和我个人的总结. 什么是迭代 可以直接作用于for循环的对象统称为可迭代对象(Iterable). 可以被next()函数调用并不断返回下 ...

  3. EZ-USB FX2(68013)固件研究

    原始资料来自网络 整理日: 2015年2月12日 1. Welcome 算是给所有正在学习USB,还徘徊着不得其门而入的朋友一个入门的契机吧,我也深知入门的痛苦,有些人入门就是抱着那什么USB协议,包 ...

  4. 最浅显、易懂的Linux 硬链接与软链接的理解

    正文: Linux上的文件可以这么理解:文件-->文件名.文件是一个Object,也就是磁盘上的二进制数据.一个文件可以有多个文件名,平时我们都是通过文件名访问文件Object. 这样,硬链接可 ...

  5. ORACLE 定时任务JOB

    http://www.cnblogs.com/xclw/archive/2009/12/04/1616945.html

  6. Hibernate 注解 动态插入( DynamicInsert) 动态更新(DynamicUpdate)

    @DynamicUpdate(value = true)@DynamicInsert(value = true) 这两个注解默认是false,经试验,如果使用了这两个注解,在一定程度上是可以提高插入和 ...

  7. qt 原子操作 QAtomicInt(++和--都不是原子操作:都包含三条机器指令)

    ++和--都不是原子操作:都包含三条机器指令 http://sroply.blog.163.com/blog/static/17092651920106117251539/

  8. 只看Delphi自带的WnAPI帮助似乎不够

    比如,MessageBox在Delphi自带帮助的参数说明中,对其第四个参数的MB_类型说明只有最常见的6种类型,这么多年搞得我天经地义的以为MessageBox就是这么简单.今天看了一位前辈写的老代 ...

  9. Apache / PHP 5.x Remote Code Execution Exploit

    测试方法: 本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负! /* Apache Magica by Kingcope */ /* gcc apache-magika.c -o ...

  10. org.hibernate.LazyInitializationException: failed to lazily initialize

    今天搞了一上午,都在解决这个问题:org.hibernate.LazyInitializationException: failed to lazily initialize 原因很简单,是在非法的s ...