<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-wiedth,initial-scale=1.0" />
    <title>Bodor</title>
    <link href="/Css/common.css" rel="stylesheet" />
</head>
<body style="background-color:gray">
    <form id="form1" enctype="multipart/form-data">
        <input type="button" value="开始" id="btnStart" />
        <input type="button" value="关闭" id="btnEnd" />
        <script src="/Scripts/jquery-1.8.2.min.js"></script>
        <script src="/Scripts/common.js"></script>
    </form>
</body>
</html>
<script type="text/javascript">
    $(function () {
        var a = $(window).height();
        $("#form1").height(a);
  
        //点击开始
        $("#btnStart").click(function () {
            $.ajax({
                type: "post",
                url: "../StartHandler.ashx",
                dataType: "json",
                data: { type: "1" },
                cache: false,
                async: false,
                complete: function () {
                },
                success: function (data) {
                    if (data) {
                        $(this).css({ "background": "green" });
                        $(this).siblings("input").css({ "background": "red" });
                    }
                }
            });
               
        });
        $("#btnEnd").click(function () {
           
            $.ajax({
                type: "post",
                url: "../StartHandler.ashx",
                dataType: "text",
                data: {type:"0"},
                cache: false,
                async: false,
                complete: function () {
                },
                success: function (data) {
                  
                    if (data) {
                        $(this).css({ "background": "green" })
                        $(this).siblings("input").css({ "background": "red" });
                    }
                }
            });
        });
    });
</script>
body{
    margin:0;
}
#form1{
    width:100%;
    height:100%;
    overflow:hidden;
}
#btnStart,#btnEnd{
    font-size: 8vw;
    font-weight: bold;
    color: #fff;
    border: 0;
    background: red;
    border-radius: 100%;
    width: 40vw;
    height: 40vw;
    display:block;
    margin:0 auto;
    outline:none;
    margin-top:20vw;
}
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.SessionState;
namespace WebAppText
{
    /// <summary>
    /// StartHandler 的摘要说明
    /// </summary>
    public class StartHandler : IHttpHandler, IRequiresSessionState
    {
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            string p = "Text\\log.txt";
            string path = urlConvertorLocal(p);
            //MyWriteNoAppend(path, "1");
            string type = context.Request["type"];
            switch (type)
            {
                case "1"://开始
                    {
                        context.Response.Write(MyWriteNoAppend(path, "1"));
                        break;
                    }
                case "0": // 关闭
                    {
                        context.Response.Write(MyWriteNoAppend(path, "0"));
                        break;
                    }
                default:
                    break;
            }
        }
        /// <summary>
        /// 不追加写入
        /// </summary>
        /// <param name="path"></param>
        /// <param name="content"></param>
        public bool MyWriteNoAppend(string path, string content)
        {
            bool isok = true;
            using (FileStream fs = new FileStream(path, FileMode.Create))
            {
                using (StreamWriter sw = new StreamWriter(fs))
                {
                    //开始写入
                    sw.Write(content);
                    // 清空缓冲区
                    sw.Flush();
                    isok = true;
                }
            }
            return  isok;
        }
        /// <summary>  
        /// 相对路径转绝对路径  
        /// </summary>  
        /// <param name="strUrl"></param>  
        /// <returns></returns>  
        public static string urlConvertorLocal(string strUrl)
        {
            string tmpRootDir = HttpContext.Current.Server.MapPath(System.Web.HttpContext.Current.Request.ApplicationPath.ToString());//获取程序根目录  
            string urlPath = tmpRootDir + strUrl.Replace(@"/", @"/"); //转换成绝对路径  
            return urlPath;
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

C# 读写text 详细讲解的更多相关文章

  1. [iOS]数据库第三方框架FMDB详细讲解

    [iOS]数据库第三方框架FMDB详细讲解 初识FMDB iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦.于是,就出现了一系列将SQLite API进行封 ...

  2. node+vue进阶【课程学习系统项目实战详细讲解】打通前后端全栈开发(1):创建项目,完成登录功能

    第一章 建议学习时间8小时·分两次学习      总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章]) 视频教程地 ...

  3. Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解

    前言 大家好,给大家带来Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解的概述,希望你们喜欢 Activity是什么 作为一个Activ ...

  4. 第九节:详细讲解Java中的泛型,多线程,网络编程

    前言 大家好,给大家带来详细讲解Java中的泛型,多线程,网络编程的概述,希望你们喜欢 泛型 泛型格式:ArrayList list= new ArrayList(); ArrayList list= ...

  5. Hibernate中所有包作用详细讲解

    http://liyanblog.cn/articles/2012/09/17/1347848802900.html Hibernate一共包括了23个jar包,令人眼花缭乱.本文将详细讲解Hiber ...

  6. Iframe 用法的详细讲解

    1转自:https://blog.csdn.net/judyge/article/details/51786064 zIframe 用法的详细讲解 把iframe解释成“浏览器中的浏览器“很是恰当 & ...

  7. Nginx基础详细讲解

    Nginx基础详细讲解 链接:https://pan.baidu.com/s/1xB20bnuanh0Avs4kwRpSXQ 提取码:migq 复制这段内容后打开百度网盘手机App,操作更方便哦 1. ...

  8. vue-cli 目录结构详细讲解

    https://juejin.im/post/5c3599386fb9a049db7351a8 vue-cli 目录结构详细讲解 目录 结构预览 ├─build // 保存一些webpack的初始化配 ...

  9. MySQL锁详细讲解

    本文章向大家介绍MySQL锁详细讲解,包括数据库锁基本知识.表锁.表读锁.表写锁.行锁.MVCC.事务的隔离级别.悲观锁.乐观锁.间隙锁GAP.死锁等等,需要的朋友可以参考一下   锁的相关知识又跟存 ...

随机推荐

  1. Mysql不同存储引擎的表转换方法

    Mysql不同存储引擎的表转换方法 1.Alter table直接修改表的存储引擎,但是这样会导致大量的系统开销,Mysql为此要执行一个就表向新表的逐行复制.在此期间,转换操作可能会占用服务器的所有 ...

  2. CentOS 5.11安装配置LAMP服务器(Apache+PHP5+MySQL)

    http://www.osyunwei.com/archives/8880.html 准备篇: CentOS 5.x系统安装配置图解教程 http://www.osyunwei.com/archive ...

  3. ADO.NET(OleDb)读取Excel表格时的一个BUG

    如果我们有例如以下一个Excel表格:    如今要使用C#程序读取其内容: using System;  using System.Data.OleDb;    namespace Skyiv.Be ...

  4. 深刻理解Java中形參与实參,引用与对象的关系

    声明:本博客为原创博客,未经同意.不得转载! 原文链接为http://blog.csdn.net/bettarwang/article/details/30989755 我们都知道.在Java中,除了 ...

  5. 纯JS写的一款记录事项的单页应用

    要点: 1.使用localStorage存储 2._change_record_progress函数以字符串作为参数,用eval执行这个参数 3.使用了jQuery自定义事件,便于数据改变时实时更新显 ...

  6. python 【第二篇】python基本数据类型

    python数据类型 python的数据类型和大多数编程语言一样,有int,float,long,string但是python有三个特殊的数据类型:列表,元组,字典 如果不知道你的数据类型有什么方法: ...

  7. Android 常用Shell命令

    1.查询模拟器/设备实例 adb devices 2.从模拟器/设备中拷入或拷出文件(默认拷贝在执行目录) 从模拟器或者设备中复制文件或目录,使用(如下命): adb pull <remote& ...

  8. Timus 1545. Hieroglyphs Trie的即学即用 实现字典提示功能

    前面学了Trie,那么就即学即用.运用Trie数据结构来解决这道题目. 本题目比較简单,当然能够不使用Trie.只是多用高级数据结构还是非常有优点的. 题目: Vova is fond of anim ...

  9. HDU 5302(Connect the Graph- 构造)

    Connect the Graph Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others ...

  10. nhibernate实体类主键ID赋值问题

    有个同事忽然来找我,说他遇到了一个问题,在调用nhibernate 进行update数据的时候报错,说是有数据行锁定. 看代码,没啥问题. 直接在PL/SQL developer里对数据库进行插入,也 ...