zoukankan      html  css  js  c++  java
  • 生成静态网页的简单新闻发布

    using System.Data.OleDb;
    using System.IO;
    using System.Text;

    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            OleDbConnection conn = new OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=|datadirectory|news.mdb");
            conn.Open();
            string newsfilename = DateTime.Now.ToString("yyyyMMddHHmmss") + ".html";
            OleDbCommand comm = new OleDbCommand("insert into news(newstitle,newsfilename) values('" + TextBox1.Text + "','" + newsfilename + "')", conn);
            if (WriteFile(this.TextBox1.Text, this.TextBox2.Text, newsfilename))
            {
                comm.ExecuteNonQuery();

            }
            else
            {
                Response.Write("error");
            }
            conn.Close();
        }


        public bool WriteFile(string ArticleTitle, string ArticleContent, string filename)
        {
            string OutPutPath = HttpContext.Current.Server.MapPath("p/");
            Encoding encoding = Encoding.GetEncoding("gb2312");
            // 读取模板文件
            string ModelTemp = HttpContext.Current.Server.MapPath("ModelHTML.htm");
            StreamReader sr = null;
            StreamWriter sw = null;
            string str = "";
            try
            {
                sr = new StreamReader(ModelTemp, encoding);
                str = sr.ReadToEnd(); // 读取文件
            }
            catch (Exception exp)
            {
                HttpContext.Current.Response.Write(exp.Message);
                HttpContext.Current.Response.End();
                sr.Close();
            }


          
            // 替换内容
            str = str.Replace("PageTitle", ArticleTitle); //模板页中的PageArticle
            str = str.Replace("ArticleTitle", ArticleTitle);
            str = str.Replace("ArticleContent", ArticleContent);
            // 写文件
            try
            {
                sw = new StreamWriter(OutPutPath + filename, false, encoding);
                sw.Write(str);
                sw.Flush();
            }
            catch (Exception ex)
            {
                HttpContext.Current.Response.Write(ex.Message);
                HttpContext.Current.Response.End();
            }
            finally
            {
                sw.Close();
            }
            return true;
        }


    }

    ----------------------------------------------------------------------------------------------------

    <body>
        <form id="form1" runat="server">
        <div>
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
                DataKeyNames="id" DataSourceID="AccessDataSource1">
                <Columns>
                    <asp:CommandField ShowDeleteButton="True" />
                    <asp:BoundField DataField="id" HeaderText="id" InsertVisible="False"
                        ReadOnly="True" SortExpression="id" />
                    <asp:TemplateField HeaderText="newsfilename" SortExpression="newsfilename">
                        <EditItemTemplate>
                            <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("newsfilename") %>'></asp:TextBox>
                        </EditItemTemplate>
                        <ItemTemplate>
                           <a href='p/<%#Eval("newsfilename") %>' target="_blank"><%#Eval("newstitle") %></a>
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
            <asp:AccessDataSource ID="AccessDataSource1" runat="server"
                DataFile="~/App_Data/news.mdb"
                DeleteCommand="DELETE FROM [news] WHERE [id] = ?"
                InsertCommand="INSERT INTO [news] ([id], [newstitle], [newscontent], [newsfilename]) VALUES (?, ?, ?, ?)"
                SelectCommand="SELECT * FROM [news]"
                UpdateCommand="UPDATE [news] SET [newstitle] = ?, [newscontent] = ?, [newsfilename] = ? WHERE [id] = ?">
                <DeleteParameters>
                    <asp:Parameter Name="id" Type="Int32" />
                </DeleteParameters>
                <UpdateParameters>
                    <asp:Parameter Name="newstitle" Type="String" />
                    <asp:Parameter Name="newscontent" Type="String" />
                    <asp:Parameter Name="newsfilename" Type="String" />
                    <asp:Parameter Name="id" Type="Int32" />
                </UpdateParameters>
                <InsertParameters>
                    <asp:Parameter Name="id" Type="Int32" />
                    <asp:Parameter Name="newstitle" Type="String" />
                    <asp:Parameter Name="newscontent" Type="String" />
                    <asp:Parameter Name="newsfilename" Type="String" />
                </InsertParameters>
            </asp:AccessDataSource>
        </div>
        </form>
    </body>

    天道酬勤,厚积薄发。 君子之行,静以修身,俭以养德。 非淡泊无以明志,非宁静无以致远。 如有恒,何须三更起,半夜眠;最怕莫,三天打鱼两天晒网,竹篮打水一场空。
  • 相关阅读:
    Java ConcurrentModificationException 异常分析与解决方案
    Kafka剖析(一):Kafka背景及架构介绍
    Linux下更改oracle客户端字符集和服务端字符集
    storm-kafka源码走读之KafkaSpout
    kafka系列之(3)——Coordinator与offset管理和Consumer Rebalance
    Kafka源码深度解析-序列7 -Consumer -coordinator协议与heartbeat实现原理
    apache kafka系列之在zookeeper中存储结构
    Java transient关键字使用小记
    Kafka设计解析(一)- Kafka背景及架构介绍
    JavaScript-如何获取页面元素对象,元素id
  • 原文地址:https://www.cnblogs.com/houweidong/p/3439357.html
Copyright © 2011-2022 走看看